Hi,
I'm expieriencing a problem with the following check_rcpt ACL.
The problem is that as you can see in the debug output the
host_lookup isn't matched and the first ACL entry "accept hosts"
is not matched too.
But the third one is a match. I don't understand it!
Hope someone can explain me this weird behaviour ;-)
Thanx,
Michael
=========================
host_lookup = !+friends_with_broken_mx : *
hostlist friends_with_broken_mx = /etc/exim/friends_with_broken_mx
accept hosts = +friends_with_broken_mx
require hosts = !+friends_with_broken_mx
message = local part of sender address or domain does not
exist
log_message = local part of sender address or domain does not
exist
verify = sender/callout=120s
=========================
=========================
mail:~/.ssh # less /etc/exim/friends_with_broken_mx
62.159.202.98
193.190.200.4
81.88.34.3
*.tle.de
62.180.229.130
mail:~/.ssh #
=========================
cutout from debug-output:
=========================
mail:~/.ssh # exim -bh 62.180.229.130
**** SMTP testing session as if from host 62.180.229.130
**** but without any ident (RFC 1413) callback.
**** This is not for real!
>>> sender host name required, to match against *.tle.de
>>> looking up host name for 62.180.229.130
>>> IP address lookup failed: h_errno=1
LOG: no host name found for IP address 62.180.229.130
>>> host in "/etc/exim/friends_with_broken_mx"? no (failed to find host
name for 62.180.229.130)
>>> host in host_lookup? yes (matched "*")
>>> looking up host name for 62.180.229.130
>>> IP address lookup failed: h_errno=1
LOG: no host name found for IP address 62.180.229.130
[...]
>>> processing "accept"
>>> check hosts = +friends_with_broken_mx
>>> host in "+friends_with_broken_mx"? no (end of list)
>>> accept: condition test failed
>>> processing "require"
>>> check hosts = !+friends_with_broken_mx
>>> host in "!+friends_with_broken_mx"? yes (end of list)
>>> check verify = sender/callout=120s
>>> require: condition test succeeded
=========================