Here again a multiple-dialouts issue, but this time related to address
rewriting and spam-blocking.
I use service of several ISP's for my connection to Internet. Each of them
accepts SMTP connections only from their own dial-up lines. I set up my
smarthost router to use route_file instead of route_list, where the route
file is dynamically set up by ppp/ip-up.d script (as already suggested on
this list - see mail from Jim Knobble "Multiple smarthosts").
However, this is not enough. Recently some ISP's started to verify the
envelope sender, ranging from simple checks whether they can reach the sender
domain, up to insisting that the sender address be related to the username of
the dial-up connection in use. I thought I'd handled it by rewriting
return_path in my smtp transport as follows:
smarthost_smtp:
driver = smtp
return_path = ${lookup{$host} partial-lsearch {/etc/ppp/smtp-sender} {$value} fail}
where /etc/ppp/smtp-sender contains something like:
*.isp1.com: username1@???
*.isp2.org: username2@???
But it does not work. Investigation of the debug output showed that $host is
expanded to an empty string, while the Exim documentation says it should
contain the hostname the transport is talking to.
Any ideas what is wrong?
--
Pawel Konieczny