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