ietf-smtp
[Top] [All Lists]

Re: [ietf-smtp] Dotless domains and email

2013-06-21 14:51:41
Does anyone know why RFC 2821 added the dotless domain restriction?

Dunno, perhaps the author can dredge up the distant memories. The text in 2821 sec 2.3.5 looks to me like it does allow dotless domains, and doesn't match the ABNF.

2.3.5 Domain

   A domain (or domain name) consists of one or more dot-separated
   components.  These components ("labels" in DNS terminology [22]) are
   restricted for SMTP purposes to consist of a sequence of letters,
   digits, and hyphens drawn from the ASCII character set [1]. ...



Like 5321, 821 permits dotless domains by its construction rules:


          <forward-path> ::= <path>

           <path> ::= "<" [ <a-d-l> ":" ] <mailbox> ">"

           <at-domain> ::= "@" <domain>

           <domain> ::=  <element> | <element> "." <domain>

           <element> ::= <name> | "#" <number> | "[" <dotnum> "]"

           <mailbox> ::= <local-part> "@" <domain>

           <local-part> ::= <dot-string> | <quoted-string>

           <name> ::= <a> <ldh-str> <let-dig>

           <ldh-str> ::= <let-dig-hyp> | <let-dig-hyp> <ldh-str>

           <let-dig> ::= <a> | <d>

           <let-dig-hyp> ::= <a> | <d> | "-"

           <dot-string> ::= <string> | <string> "." <dot-string>

           <string> ::= <char> | <char> <string>

           <quoted-string> ::=  """ <qtext> """

           <qtext> ::=  "\" <x> | "\" <x> <qtext> | <q> | <q> <qtext>

           <char> ::= <c> | "\" <x>

           <dotnum> ::= <snum> "." <snum> "." <snum> "." <snum>

           <number> ::= <d> | <d> <number>

-----Original Message-----
From: ietf-smtp-bounces(_at_)ietf(_dot_)org 
[mailto:ietf-smtp-bounces(_at_)ietf(_dot_)org] On Behalf Of Barry Leiba
Sent: Friday, June 21, 2013 12:15 PM
To: Dave Crocker
Cc: Tony Finch; John Levine; ietf-smtp(_at_)ietf(_dot_)org
Subject: Re: [ietf-smtp] Dotless domains and email

They might have been looking at RFC 2821

Well, that would be odd, certainly.

On the other hand, I'm not finding text in RFC 2821 (searching only for
FQDN) that asserts the limitation.  Pointer please?

Assembled from the bits of grammar in 2821:

  "RCPT TO:" ("<Postmaster@" domain ">" / "<Postmaster>" /
         Forward-Path) [SP Rcpt-parameters] CRLF

  Forward-path = Path

  Path = "<" [ A-d-l ":" ] Mailbox ">"

  Mailbox = Local-part "@" Domain

  Domain = (sub-domain 1*("." sub-domain)) / address-literal

---
RFC 5321 makes "Domain" this:

  Domain         = sub-domain *("." sub-domain)

...which allows the dotless option.

_______________________________________________
ietf-smtp mailing list
ietf-smtp(_at_)ietf(_dot_)org
https://www.ietf.org/mailman/listinfo/ietf-smtp