Re: [Exim] Problem with and condition in ACL

Startseite
Nachricht löschen
Nachricht beantworten
Autor: Tabor J. Wells
Datum:  
To: Rick Cooper
CC: exim-users
Betreff: Re: [Exim] Problem with and condition in ACL
On Tue, Aug 19, 2003 at 04:58:41PM -0500,
Rick Cooper <rick@???> is thought to have said:

> I just read your first message again, make that !def: if you are looking for
> missing message-id, sorry was looking at the condition and not the desire


(adding exim-users back in)

Actually this is odd.

With {def:h_message-id:} and the X-MailScanner match it results in a
rejection whether or not there's a Message-ID header.

With {!def:h_message-id:} and the X-MailScanner match it results in an
accept whether or not there's a Message-ID header.

Oh. I see why. It's because Exim has already inserted it's own Message-ID
header before the DATA ACL fires. So that makes testing for existance of
Message-ID: impossible. Philip is this a bug? Or at the very least a place
where the documentation needs to be updated?

Although I suppose it's easy enough to work around:

deny    condition = ${if and{{match{$h_message-id:}{<E$message_id@$primary_hostname>}} \
                               {match{$h_x-mailscanner:}{Found to be clean}}} \
                               {true}{false}}
          log_message = X-MailScanner header with no Message-ID. Probably \
                        W32.Sobig.F.


this seems to work for me now.

--
--------------------------------------------------------------------
Tabor J. Wells                                     twells@???
Fsck It!                 Just another victim of the ambient morality