ietf-822
[Top] [All Lists]

Re: Allowing non-quoted "." and "," in display-name?

2005-11-30 11:34:16


I just received an e-mail which had the following headers (excerpted):

     Received: from SELDMSX01.corpusers.net ([10.129.0.161]) by
         seldcon01.corpusers.net with Microsoft SMTPSVC(6.0.3790.1830);
         Tue, 29 Nov 2005 10:14:09 +0100
     X-MimeOLE: Produced By Microsoft Exchange V6.5.7226.0
     ...
     From: =?iso-8859-1?Q?H=E4ggstr=F6m=2C_Daniel?=
         <Daniel(_dot_)Haggstrom(_dot_)x(_at_)sonyericsson(_dot_)com>

After MIME decoding, the From: field of this e-mail looks like this:

     From: Häggström, Daniel 
<Daniel(_dot_)Haggstrom(_dot_)x(_at_)sonyericsson(_dot_)com>

This causes my mail program (Macintosh Eudora) to go wild,
believing that "Höggström" and "Daniel" are two different
people and trying to send my reply to both of them.

This is a bug in Eudora IMO and needs to be treated as such.

The way I understand it from RFC 2822, it is the sending mail program
(Microsoft Exchange V6.5.7226.0) which is faulty, since the
From: field should have been:

     From: "Häggström, Daniel" 
<Daniel(_dot_)Haggstrom(_dot_)x(_at_)sonyericsson(_dot_)com>

Your understanding is incorrect. RFC 2822 doesn't deal with encoded words; they
are done as a layer on top of RFC 2822. The string RFC 2822 saw was
=?iso-8859-1?Q?H=E4ggstr=F6m=2C_Daniel?=, which is syntactically legal without
quotes. This means that Exchange has no reason to add quotes, and indeed should
be commended for not doing so given all the problems unnecessary quotes cause.

The way this is supposed to work is that the encoded words are decoded for
display only. The content of encoded words doesn't have to be syntactically
valid by RFC 2822 rules.

RFC 2822 allows "." without quotes as "obs-phrase" i.e. something
you should receive but not produce. Is "," also going to be
accepted without quotes in the future?

Not a chance. It would make the grammar much more difficult to parse. ("." is
plenty bad enough.)

                                Ned

<Prev in Thread] Current Thread [Next in Thread>