Hi !!
I have an acl condition that calls another acl like this:
deny !acl = spf_rcpt_acl
before this one I have another one that does a mysql lookup, and when
this lookup fails and spf_rcpt_acl gaves defer then instead of logging
the real cause it logs MYSQL: no data found, debug output follows:
>>> processing "drop"
>>> check sender_domains = mysql;SELECT DISTINCT domain FROM servicios WHERE user='${quote_mysql:$sender_address_domain}' AND type='dom'
>>> in "mysql;SELECT DISTINCT domain FROM servicios WHERE user='' AND type='dom'"? no (end of list)
>>> drop: condition test failed
>>> processing "require"
>>> check verify = sender/callout=10s/defer_ok
>>> require: condition test succeeded
>>> processing "deny"
>>> check !acl = spf_rcpt_acl
>>> using ACL "spf_rcpt_acl"
>>> processing "warn"
>>> check set acl_m8 = $sender_address
>>> =
>>> warn: condition test succeeded
>>> processing "deny"
>>> check !acl = spf_check
>>> using ACL "spf_check"
>>> processing "warn"
>>> check set acl_m9 = ${readsocket{/tmp/spfd}{ip=$sender_host_address\nhelo=$sender_helo_name\nsender=$acl_m8\n\n}{20s}{\n}{socket failure}}
>>> = socket failure
>>> warn: condition test succeeded
>>> processing "defer"
>>> check condition = ${if eq{$acl_m9}{socket failure}{yes}{no}}
>>> = yes
>>> defer: condition test succeeded
>>> deny: condition test deferred
>>> deny: condition test deferred
451 Cannot connect to spfd
LOG: H=hcm-ms-185.vnn.vn (pepe.ols.es) [203.162.4.185] temporarily
rejected MAIL <>: MYSQL: no data found
LOG: SMTP command timeout on connection from hcm-ms-185.vnn.vn
(pepe.ols.es) [203.162.4.185]
If i put an extra condition to the mysql lookup that fails (in that
case !senders = :), then it works ok:
>>> processing "drop"
>>> check !senders = :
>>> in ":"? yes (matched "")
>>> drop: condition test failed
>>> processing "require"
>>> check verify = sender/callout=10s/defer_ok
>>> require: condition test succeeded
>>> processing "deny"
>>> check !acl = spf_rcpt_acl
>>> using ACL "spf_rcpt_acl"
>>> processing "warn"
>>> check set acl_m8 = $sender_address
>>> =
>>> warn: condition test succeeded
>>> processing "deny"
>>> check !acl = spf_check
>>> using ACL "spf_check"
>>> processing "warn"
>>> check set acl_m9 = ${readsocket{/tmp/spfd}{ip=$sender_host_address\nhelo=$
nder_helo_name\nsender=$acl_m8\n\n}{20s}{\n}{socket failure}}
>>> = socket failure
>>> warn: condition test succeeded
>>> processing "defer"
>>> check condition = ${if eq{$acl_m9}{socket failure}{yes}{no}}
>>> = yes
>>> defer: condition test succeeded
>>> deny: condition test deferred
>>> deny: condition test deferred
451 Cannot connect to spfd
LOG: H=(pepe.ols.es) [210.64.127.58] temporarily rejected MAIL <>:
Cannot conn
t to spfd
--
Best regards ...
Beauty is in the eye of the beer holder...
----------------------------------------------------------------
David Saez Padros http://www.ols.es
On-Line Services 2000 S.L. e-mail david@???
Pintor Vayreda 1 telf +34 902 50 29 75
08184 Palau-Solita i Plegamans movil +34 670 35 27 53
----------------------------------------------------------------