On Mon, 2009-04-20 at 20:46 +0800, W B Hacker wrote:
> John Horne wrote:
> >
> > We sometimes receive messages which have no Message-Id header. Since we
> > also do SMTP time spamassassin checking, the SA log file checks the
> > message but shows the message-id as 'unknown'. Because of this it is
> > pretty much impossible to tie together the Exim log entry of the
> > received message (where the message-id is logged as 'id='), and the SA
> > log of how the message scored (i.e. what scored was it assigned, and
> > what tests did it trigger).
> >
> ISTR those are (generally) created on MS 'lookout' o/e (if even legit at
> all..) AND that MS has 'fixed' that a while back, so it should be a
> gradually vanishing issue.
>
> Otherwise, the sending MTA often adds a message-ID for such (as Exim can
> do..)
>
> If NEITHER - simply reject them at smtp time.
>
A bit too strict for us I think. I would end up with more complaints
from users (here and senders), if we rejected the mail. Some messages
(with no message-id) are later rejected because of their content, but
other mail seems to be genuine enough.
> Ex:
>
> # DATA_7: IF NOT proper headers THEN [warn | deny].
> #
> # warn
> deny
> message = X-Broken-Mailer: Headers violate RFC2822 standard.
> log_message = D7 missing message-id, date, or subject headers
> condition = ${if or {{!def:h_Message-ID:} {!def:h_Date:} \
> {!def:h_Subject:}} {true}{false}}
>
You reject mail with no subject line? As far as I can see no subject
line is valid (so is no message-id it seems). RFC2822 section 3.6 says:
The only required header fields are the origination date field and
the originator address field(s). All other header fields are
syntactically optional.
Further along RFC2822 says that a message-id SHOULD be present, but that is not a MUST.
John.
--
---------------------------------------------------------------
John Horne, University of Plymouth, UK Tel: +44 (0)1752 587287
E-mail: John.Horne@??? Fax: +44 (0)1752 587001