Re: [exim] Regexp for catching "prefixed" Message-ID: fields…

Top Page
Delete this message
Reply to this message
Author: Juha Saarinen
Date:  
To: Tor Slettnes
CC: exim-users
Subject: Re: [exim] Regexp for catching "prefixed" Message-ID: fields?
On Fri, 17 Sep 2004 01:50:38 -0700, Tor Slettnes <tor@???> wrote:
> Apparently, he does not want want to deny messages with no
> 'Message-ID', so long as a 'X-Blah-Message-ID' line exists.
>
> I think that will defeat the purpose of having the check above in the
> first place. The 'Message-ID' line is an essential ingredient of a
> well-formed message; there may well be other 'xxx-Message-ID' headers
> as well.


OK, I wasn't clear on whether Blah-Message-ID and Message-ID should be
treated the same.

Similarly, I noticed that this ACL:

deny
        message =  The headers of your message are not RFC 2822 compliant.
        log_message =   Message headers malformed.
        !verify =       header_syntax


accidentally catches Microsoft bcc hideousness like:

2004-09-17 15:30:32 1C89SC-0008JL-7s H=<mailer> [IP address] F=<from
address> rejected after DATA: Message headers malformed.: "@" or "."
expected after "Undisclosed-Recipient": failing address in "To" header
is: <Undisclosed-Recipient:;>

I reckon that's a bug in MS Outhouse etc, because it uses semi-colons
as an address separator but anyway, it's something one has to live
with.

verify = header_syntax

This condition is relevant only in an ACL that is run after a message
has been received, that is, in an ACL specified by "acl_smtp_data" or
"acl_not_smtp". It checks the syntax of all header lines that can contain
lists of addresses (Sender:, From:, Reply-To:, To:, Cc:, and Bcc:).
Unqualified addresses (local parts without domains) are permitted only in
locally generated messages and from hosts that match
"sender_unqualified_hosts" or "recipient_unqualified_hosts", as
appropriate.

Note that this condition is a syntax check only. However, a common spamming
ploy is to send syntactically invalid headers such as

     To: @


and this condition can be used to reject such messages.

Is there a way to make an exception to the header check?

--

Juha