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
--

--
## List details at https://lists.exim.org/mailman/listinfo/exim-users
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://wiki.exim.org/

Reply via email to