On Mon, 30 Sep 2002, Stefan Kaltenbrunner wrote:
> Hi all!
>
> we are currently evaluating exim4 as a replacement for our aging
> sendmail installation. During our initial tests we found a small problem
> which we where unable to solve.
> While most of our setup is LDAP-based(works fine!) we have some (mostly
> old) account which don't exist in de directory. The maschine in question
> is designed to work as a mail-gateway without local delivery and is
> doing receiver AND sender verify.
> For coping with with accounts we have but don't exist in the directory
> we are using 2 simple text-files which contain the mail-addresses in
> question.
>
> The testsystem is running Solaris 9 and exim 4.10.8(the prerelease)
> using Sun LDAP as the backend.
>
> for verification we use the following 2 simple routers(among others -
> but those work as expected):
>
> sender_accept:
> driver = accept
> senders = /etc/mail/no_sender_vrfy
^^^^^^^^^
Verify the sender
> verify_recipient = false
> verify_only
>
> receiver_accept:
> driver=accept
> senders = /etc/mail/no_receiver_vrfy
^^^^^^^^^
Verify the sender again
> verify_only
> verify_sender = false
>
> this works fine as long as the sender and the receiver is the same user
> or if we are only doing sender OR receiver verification.
> However wenn using sender AND receiver verify at the same time sender
> verification works as expected(maybe because it happens first) - but
> receiver verification fails in a very weird way.
>
> Attempting a fake smtp-session using "-bh <ip> -d" we get:
> (test_user1@??? is the sender and test_user2@??? the
> recipient)
> checking senders
> address match: subject=test_user1@??? pattern=test_user2@???
> ^^^^^^^
> -> but why is exim using the SENDER-address for the lookup here and not
> the recipient-address ?
Because you use senders = in your preconditions, but you want to check for
the recipient, right?
You could use an condition like this instead of the senders = in your
router
condition = ${lookup {$local_part@$domain} lsearch \
{/etc/mail/no_receiver_vrfy}}
ciao