Re: [exim] ACL Question - using acl_cX or checking for heade…

Top Page
Delete this message
Reply to this message
Author: Ian FREISLICH
Date:  
To: Torben Janssen
CC: exim-users
Subject: Re: [exim] ACL Question - using acl_cX or checking for headers?
Torben Janssen wrote:
> Hi,
>
> I'm trying to mark mails which has no reverse Lookup and are listed in
> an rbl.
>
> My acls look like this:
>
> warn    message  = X-DNSbl-Warning: $sender_host_address is listed in
> $dnslist_domain
>             set acl_c1 = DNSbl-Warning
>             dnslists = list.dsbl.org : \
>                            dnsbl.sorbs.net : \
>                            dnsbl.njabl.org : \
>                            bl.spamcop.net : \
>                            dsn.rfc-ignorant.org : \
>                            sbl-xbl.spamhaus.org : \
>                            l1.spews.dnsbl.sorbs.net

>
>             warn    message = X-rDNS: $sender_host_address has no rDNS
>                         set acl_c2 = rDNS
>                         !verify     = reverse_host_lookup

>
>             warn    message = mailserver has no reverse lookup and is
> listed in a blacklist
>                         condition = ${if and { {eq
> {$acl_c1}{DNSbl-Warning}}{eq {$acl_c2}{rDNS}} } {yes}{no} }

>
> My experience shows me that acl_c1 and c2 are alway set. So my last
> condition is always true. First I tried to check if the two headers
> X-DNSbl-Warning and X-rDNS are present but the condition I created
> always fail...


Yes, the acl is executed in order. Your first one says "set $acl_c1
to DNSbl-Warning", then try the dns lists. You should move the set
to _after_ the dnslists statement.

Ian

--
Ian Freislich