On 18 Nov 2004 at 14:57, Philip Hazel wrote about
"Re: [exim] acl_smtp_data header_sen":
| On Thu, 18 Nov 2004, Fred Viles wrote:
|...
| Still not quite! When acl_m0 is not "verify_deferred", the first
| condition in the "deny" will fail and so the whole ACL statement will
| end, with control passing to the next statement. You need multiple
| "deny"s to implement "or" conditions:
|...
Doh! Of course.
| Oh! The same story applies to the "warn" as well. If the first verify
| fails, the warn finishes... You are going to need something like
|
| warn set acl_m0 = failed or deferred
| verify = header_sender
| set acl_m0 = succeeded
|
| warn condition = ${if !eq{$acl_m0}{succeeded}{yes}{no}}
| set acl_m0 = deferred
| !verify = header_sender
| set acl_m0 = failed
Final tweak (?), for readability:
warn set acl_m0 = verify_deferred
verify = header_sender
set acl_m0 = verify_suceeded
warn !verify = header_sender
set acl_m0 = verify_failed
There, I think between us we have now reinvented the incantation
posted in a previous thread related to (IIRC) detecting dnslookup
deferrals... ;)
- Fred