[Exim] Validating Virtual email domains

Top Page
Delete this message
Reply to this message
Author: David Rigby
Date:  
To: exim-users
Subject: [Exim] Validating Virtual email domains
Hi

I have a mail server setup that handles mail for three domains, using
virtual domains. Users have usernames in the form user.domain.co.uk, and
user's mail is written to /var/spool/mail/user.domain.co.uk. I've
managed to get .forward files working, with the forward files in
/home/user.domain.co.uk/.forward, but Im having problems if someoe sends
a mail to a user that doesn't exist on the system.

When a mail is sent to a non-existing user, then the file expandion
fails because it can't find the appropiate entry in the passwd file for
the domain, exim panics an defers the message, never sending an error
message - See below


userforward:
driver = forwardfile
check_local_user = false
file =
"${extract{5}{:}{${expand:${lookup{$local_part}lsearch{/etc/domains/${domain}/passwd}{$value}}}}}/.forward"

file_directory = /home/${local_part}.${domain}
file_transport = address_file
reply_transport = auto_transport
ignore_eacces = true
ignore_enotdir = true
no_verify
skip_syntax_errors = true
user = ${local_part}.${domain}
check_ancestor
filter

=================================
Output of send:-

mail -v flibble@???
Subject: test

.
Cc:
LOG: 0 MAIN
<= root@??? U=root P=local S=330
[root@rem bin]# Exim version 3.11 debug level 1 uid=15 gid=12
Berkeley DB: Sleepycat Software: DB 2.4.14: (6/2/98)
delivering message 13KHyv-0001ni-00
LOG: 0 MAIN PANIC
Failed to find user "flibble.domain.co.uk" from expanded string
"${local_part}.${domain}" from the userforward director
LOG: 0 MAIN
== flibble@??? D=userforward defer (-1): Failed to find user
"flibble.domain.co.uk" from expanded string "${local_part}.${domain}"
from the userforward director
LOG: 0 MAIN
Frozen

(I've changed the real domain to 'domain')
==================

Anyone got any ideas for me?



--
Regards

David Rigby
drigby@???