I already gave an example in my other mail, but I want to elaborate on
this a little further.
When calling 'exim -t <...>' or 'exim -bs <...>' the mail is coming in
via stdin. In the first case the mail is coming in as simple mail, in
the second via smtp. In both cases smtp_active_hostname is expanded
though. (I had the opportunity to test this by now).
How can the correct 'active host' be determined in this case anyhow? For
smtp $received_ip_address seems reasonable, but for stdin, even when
smtp is used the expansion seems pretty pointless as there is no
connection involved. (Well, of course a pipe is a connection, but it
lacks the concept of giving hostnames to the endpoints anyway). The only
viable option seems to be passing in info that helps selecting the
active host via command line.
So, when I use -oMi expansion will of course succeed, as
$received_ip_address will be defined. I can of course set
smtp_active_hostname to $primary_hostname whenever $received_ip_address
is not set. But that, of course, is just a nasty workaround and does not
work that well in some cases. And from my POV the behavior just does not
match the documentation, that's why I asked, if the behavior is intended.
Regards
-Sven
Am 25.05.2016 um 15:06 schrieb Heiko Schlittermann: > Hi,
>
> Sven Eschenberg <sven@???> (Di 24 Mai 2016 16:59:29 CEST):
>> The documentation states (v4.87) for smtp_active_hostname:
>> At the start of an incoming SMTP connection, its value is expanded and used
>> instead of the value of $primary_hostname in SMTP responses.
> …
>> Unfortunately I had to realize that exim still expands smtp_active_hostname
>> for locally incoming mail. Does this even make sense and is this behavior
>> really intended?
>
> What problem is caused by having the smtp_active_hostname set for other
> than SMTP sessions?
>
>
>