Hi,
I want to use exims autoreply capabilities to send vacation messages.
my config:
######################################################################
## autoreply/vacation transport
uservacation:
driver = autoreply
user = ${local_part}
once = ${home}/vacation-once
file = ${home}/vacation.txt
log = ${home}/vacation.log
return_message = true
text = "\
------ ------\n\n\
This message was automatically generated by email software\n\
The delivery of your message has not been affected.\n\n\
------ ------\n\n"
to = "${sender_address}"
subject = "${if def:h_Subject: {Autoreply: $h_Subject:} {I am on vacation}}"
##
######################################################################
## This director handles the automatic return of a vacation message
## vacation director....##
uservacation:
driver = localuser
transport = uservacation
require_files = ${home}/vacation.txt
# do not reply to errors or lists
senders = "! ^.*-request@.*:\
! ^owner-.*@.*:\
! ^postmaster@.*:\
! ^listmaster@.*:\
! ^mailer-daemon@.*"
# do not reply to errors and bounces or lists
condition = "${if or {{match {$h_precedence:} {(?i)junk|bulk|list}} \
{eq {$sender_address} {}}} {no} {yes}}"
# carry on checking regardless of the outcome of this director...
unseen
no_expn
no_verify
user = ${local_part}
######################################################################
(got this from config.sample)
if exim runs as root everything works fine,
but if it runs as nobody I get the following
debug-output (userforward is called before):
calling userforward director
userforward director: file = .forward
set uid=0 gid=0 euid=1001 egid=0
successful stat of /arnold/.
/arnold/.forward not found
restored uid=0 gid=0 euid=65534 egid=65534
calling uservacation director
require_files = /arnold/vacation.txt
test existence of /arnold/vacation.txt
required present, EACCES => unknown
Permission denied
uservacation director deferred arnold
message: file existence defer in uservacation director: Permission denied
userforward sets euid and egid of the user
but before looking up the vacation file euid and egid
of nobody are restored (which leads to -> permission denied).
How can I change this behavior?
regards
Arnold