Hi Andrew,
>> I've also tried to replaced the "condition" by a "require_files"
>> statement, but this doesn't work either. So it seems that there is
>> no way to use this condition check in combination with an
>> unauthenticated delivery, except I would alter the directory access
>> rights.
>
> Routers and transports have the options "user" and "group" (chapters 15
> and 24) which allow you to change the user/group that exim runs as
> for these actions. For example, the procmail example in chapter 29.6
> includes the lines
> user = $local_part_data
> group = mail
I've also tried that but without success. I think the strace confirms
that the condition check isn't run with the previously looked-up access
rights (uid=2001 gid=100). If this is the expected/correct behavior can
only be answered by Jeremy:
write(2, " 3255 getpwnam() succeeded uid=2001 gid=100\n", 44) = 44
getpid() = 3255
write(2, " 3255 checking \"condition\" \"${if exists{$home/.imapmail
/cur}}\"...\n", 66) = 66
stat("/home/tom/.imapmail/cur", 0x7fff58dba500) = -1 EACCES
(Permission denied)
getpid() = 3255
write(2, " 3255 localuser_maildir router skipped: condition
failure\n", 58) = 58
Cheers,
Juergen
--