Re: [EXIM] Procmail IFS error resolved!

Startseite
Nachricht löschen
Nachricht beantworten
Autor: Philip Hazel
Datum:  
To: zilbauer
CC: exim-users
Betreff: Re: [EXIM] Procmail IFS error resolved!
On Thu 03 Sep, Robert Zilbauer wrote:

> In case anyone else has this problem in the future, here's what fixed it
> (though I don't quite understand why).


I have saved this as a suggestion for adding to the FAQ when I next
update it.

> This continually and consistently resulted in a permission denied error as
> Exim wouldn't change EUID to the user (with or without the "user =
> ${local_part}" line in the procmail_pipe transport).


Thinking the problem was in the transport was what misled me. The
problem is that Exim wouldn't change EUID to the user *in the director*,
when trying to do the require_files check.

>  procmail:
>    driver = localuser
>    require_files = ${local_part}:${home}/.procmailrc:+/usr/local/bin/procmail
>    transport = procmail_pipe

>
> This now works flawlessly. Exim switches EUID/EGID as it's supposed to. Why?


Exim now switches EUID/EGID in the director, before calling stat() in
order to check the existence of $home/.procmailrc. It does this because
of the first item in the list, ${local_part}. If any item in a
require_files list contains no slashes, it is interpreted as a user
name, and subsequent files are checked under the uid/gid of that user.

>  procmail director deferred zilbauer
>    message: file existence defer in procmail director: Permission denied


...confirming that the problem was in the director, not the transport.

> And so ends a rather mysterious (and somewhat frustrating) chapter in 'My Life
> with Exim'.


Sorry about that.

-- 
Philip Hazel            University of Cambridge Computing Service,
ph10@???      Cambridge, England. Phone: +44 1223 334714.



--
*** Exim information can be found at http://www.exim.org/ ***