On 23/10/2011 02:50, Phil Pennock wrote:
On 2011-10-22 at 23:08 +0100, Colin wrote:
Say I have the following in /etc/staticroutes
domain1.com: 1.1.1.1
domain2.com: 2.2.2.2
domain3.com: 1.1.1.1
Delivery to each domain individually is fine. A message addressed to
[email protected] and [email protected] is fine.
A message which contains any user at domain1.com and domain3.com will
fail as both domains point to the same IP address. Can anyone see an
obvious reason why these would fail?
Yes.
Look up the documentation for "$domain":
When an address is being routed, or delivered on its own, this variable
contains the domain.
[...]
When more than one address is being delivered at once (for example, several
RCPT commands in one SMTP delivery), $domain is set only if they all have
the same domain. Transports can be restricted to handling only one domain
at a time if the value of $domain is required at transport time - this is
the default for local transports. For further details of the environment in
which local transports are run, see chapter 23.
#Router
static_route:
driver = manualroute
transport = remote_smtp_smart
route_data = ${lookup{$domain}lsearch{/etc/staticroutes}}
So at this point, the transport can access the host via $route_data.
#Transport
remote_smtp_smart:
driver = smtp
port = 25
delay_after_cutoff = false
hosts = ${lookup{$domain}lsearch{/etc/staticroutes}}
hosts_override
And here you look up the hosts again, but $domain will not be set if
multiple domains are being passed down one connection.
The static_route Router has provided a list of hosts via the
"route_data" option -- you don't need to override it again here. Just
leave off the hosts/hosts_override option to use whatever hosts were
passed into this via the Router which specified to use this Transport.
-Phil
Thank you for the good explanation of the setting, I shall do some
testing on it now - or at least when the test server reboots.
Regards,
Colin.
--
## 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/