Re: Procmail IFS error

Page principale
Supprimer ce message
Répondre à ce message
Auteur: Philip Hazel
Date:  
À: Ned Schumann
CC: exim-users
Sujet: Re: Procmail IFS error
On Sun, 6 Jul 1997, Ned Schumann wrote:

> 1997-07-01 07:58:52 0wj4OK-00002H-00 ** |IFS=' ' && exec
> /usr/local/bin/procmail -f- || exit 75 #ned <win-support@???\
> s.net> D=userforward T=address_pipe: "IFS='" command not found for
> address_pipe transport


> Any clues would be welcome.


The problem is that Exim, by default, does not run pipe commands under a
shell. It splits the line up info components by itself, and runs the
command directly. This provides improved security. There are two things
you can do:

(1) Tell users that if they want to run a pipe under a shell, they must
explicitly set one up in their pipe commands. In other words, instead of

|IFS=' ' && ...

you have to say

|/bin/sh -c "IFS=' ' &&

Alternatively, set up the command so that it isn't in the form of a
shell command.

(2) Wait for the next release of Exim, where there is a "use_shell"
option on the pipe transport to cause it to pass the command to /bin/sh.

-- 
Philip Hazel                   University Computing Service,
ph10@???             New Museums Site, Cambridge CB2 3QG,
P.Hazel@???          England.  Phone: +44 1223 334714