Re: [exim] ACL log_reject_target bug?

Página Principal
Apagar esta mensagem
Responder a esta mensagem
Autor: Russell Wilton
Data:  
Para: exim-users
Assunto: Re: [exim] ACL log_reject_target bug?
Tony Finch wrote:
> On Fri, 30 May 2008, Russell Wilton wrote:
>
>> Am I missing something, or is this a small bug?
>>
>
> I guess that it's to do with the exact order that you specify the sub-
> clauses of each deny statement. It might also be a bug, but if you can
> post your ACL then we can get a better idea of what Exim is doing.
>
> Tony.
>

OK, here is the section of my acl_smtp_rcpt ACL where the problem occurs:

# Reject if sender is listed with Spamhaus DNSBL

  deny  message = $sender_host_address is listed at $dnslist_domain; See $dnslist_text
        log_message = BLOCKED - Spamhaus: $sender_host_address -> $dnslist_value
        log_reject_target = reject
        dnslists = zen.spamhaus.dnsbl
        delay = 30s


# Reject if sender HELOed with an invalid name: it must have one or more
# non-dot characters, a dot and another one or more non-dots.

  deny  message = Invalid hostname detected in HELO: $sender_helo_name
        log_message = BLOCKED - Invalid hostname
        condition = ${if match{$sender_helo_name}{\N^[^.].*\.[^.]+$\N} {0} {1}}
        delay = 30s


# Reject if sender HELOed as our uleth.ca domain name

  deny  message = Forged hostname detected in HELO: $sender_helo_name
        log_message = BLOCKED - Forged hostname
        condition = ${if eq{$sender_helo_name}{uleth.ca} {1} {0}}
        delay = 30s


If the sender is listed with Spamhaus the rejection is logged only in
the reject log file,
as specified by the log_reject_target modifier.

If the sender is not listed with Spamhaus but does HELO with an invalid
name, it is
also logged only in the reject log even though there is no
log_reject_target in that stanza.

If both of those fall through, but the sender HELOs with my domain name,
it is logged in
both the main and reject logs as expected.

So, it seems that the value of log_reject_target does not get reset to
the default at the
start of the second deny stanza. Am I supposed to set it back to the
default with a
log_reject_target modifier in that stanza? I haven't tried that.

Russ

-- 
Russell D. Wilton                  E-Mail: WILTON(at)ULeth.CA
Info Tech Systems Analyst              Voice:  (403) 329-2525
University of Lethbridge                 FAX:  (403) 382-7108
4401 University Drive   Lethbridge, Alberta, CANADA   T1K 3M4