"CVR" == Chuq Von Rospach <chuqui@plaidworks.com> writes:
>> I thought about the same thing, and /almost/ added it, but then
>> I checked RFC 2822. While it requires one Date: header,
>> Message-ID: is actually /not/ required, although it "SHOULD be
>> present". I took that as license to be as conservative as
>> possible. :)
CVR> I'm curious, and in honesty, haven't looked. Is qmail RFC
CVR> compliant here? Or is it a case of doing what the authors
CVR> feel is right, not what the standards tell them to?
I think Qmail is probably within its rights to reject a message without a From: field or a Date: field, as RFC 2822, section 3.6.1 says:
3.6.1. The origination date field
[...] In any case, it is specifically not intended to convey the time that the message is actually transported, but rather the time at which the human or other creator of the message has put the message into its final form, ready for transport.
It's probably RFC 2821, though that specifies what the SMTP server is allowed to do in the face of invalid message content. Scanning both RFCs, I really can't find the connection, but it's probably valid for Qmail to return a 50x error after the DATA command. (I tested the one Qmail server I know about, starship.python.net, and it didn't seem to complain.)
Personally, though, I think it's thickheaded for Qmail to reject messages from localhost that are missing any headers it's perfectly capable of supplying. Every other MTA does it, so I think Qmail's just being obstinate.
I'd also appreciate if any RFC-lawyers can point to specific text to back up Qmail's opinion.
-Barry