On Mon, 9 Jan 2012, Bill Janssen wrote:
> I'm re-implementing my threading code, and I had a question about the
> language about "normalized message IDs" found in RFC 5256. That seems
> to refer to section 3.6.4 of RFC 2822: the implication is that the
> DQUOTEs in "no-fold-quote" and the "[" and "]" brackets in
> "no-fold-literal" should be removed before comparing message-ids.
no-fold-quote does not exist in the current specification (RFC 5322).
I don't know why you think that the brackets should be removed in
no-fold-literal. The brackets indicate that the contents are a literal IP
address as opposed to a domain. The fact that 10.20.30.40, as opposed to
[10.20.30.40], is parsed by some people as an IP address does not
necessarily mean that it is (I'll laugh when the first all-numeric TLD is
created!). Now, in the modern day of RFC 5322, this isn't a domain at all
but rather an id-right.
People can flame at some length whether bloop@10.20.30.40 and
bloop@[10.20.30.40] are the same message-ID. My guess is "no".
The bottom line here is whether that text about normalized message ID has
any particular meaning in the context of RFC 5322 as opposed to earlier
versions of header syntax that used local-part@domain for message-id.
IMHO (and I wrote that text!) I would treat it as advice on how to treat
warts from the past rather than how to move forward.
That is, once upon a time, it was necessary to treat:
Message-ID: <"bloop"@grok.this>
and
Message-ID: <bloop@grok.this>
as the same thing. This was a protocol wart and I'm glad to see it
declared obsolete. I wouldn't flame anyone who decided that strcmp() is
the one and only way to compare Message-IDs. I daresay that's what most
implementations did anyway even when RFC 822 was king.
-- Mark --
http://panda.com/mrc
Democracy is two wolves and a sheep deciding what to eat for lunch.
Liberty is a well-armed sheep contesting the vote.