ietf-822
[Top] [All Lists]

Re: Tightening RFC 2822 msg-IDs

2003-02-23 15:51:34

Dan Kohn wrote:

Could someone suggest the RFC 2822 syntax that would be compliant with
RFC 1036 and established practice (i.e., shorter than 250 characters and
doesn't include backslash-escaped space or control characters)?

I believe that was <= 250, and '>' was also excluded from the msg-id
interior.

msg-id          =       [CFWS] "<" id-left "@" id-right ">" [CFWS] ; maximum 
length 250 octets excluding CFWS

id-left         =       dot-atom-text / no-fold-quote / obs-id-left

id-right        =       dot-atom-text / no-fold-literal / obs-id-right

no-fold-quote   =       DQUOTE *(qtext / printable-quoted-pair) DQUOTE

no-fold-literal =       "[" *(dtext / printable-quoted-pair) "]"

printable-quoted-pair = ("\" pqtext) / obs-qp

pqtext          =       %d33-61 /         ; Printable characters excluding ">"
                        %d63-126 /
                        obs-text

dtext           =       DIGIT /
                        "A" / "B" / "C" / "D" / "E" / "F" / ; hexadecimal 
digits, case-insensitive
                        "." /                               ; IPv4 separator
                        ":"                                 ; IPv6 separator

Notes:
1. I have left optional CFWS around the msg-id, though that appears
   to be an issue with some news software. It is easily refined if
   necessary ("ownership" of CFWS is a remaining ambiguity in 2822).
2. dot-atom-text syntax is also used in dot-atom, and isn't itself
   readily amenable to specification of a length limit, even if one
   could ignore the impact on other constructs
3. there is no attempt to impose a separate left-side length limit
4. '>' is ecluded from the msg-id interior per 1036 sect. 2.1.5.
   To restore it pqtext becomes the single range %d33-126.
5. obs- syntax change is limited to the maximum length restriction.
6. dtext is limited to strictly what is necessary.


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