On Jul 19, 2006, at 4:20 PM, Paul Hoffman wrote:
At 4:08 PM -0700 7/19/06, Douglas Otis wrote:
On Jul 19, 2006, at 10:29 AM, Paul Hoffman wrote:
No, that's wrong: only the labels that have non-LDH characters
are converted. Section 4 in IDNA covers this correctly.
Good point, but not exactly right either.
Please show *exactly* where the following is "not exactly right":
Internationalized domain names MUST be converted using
the steps in section 4 of [RFC3490] using the ToASCII
function.
The term "internationalized domain name" covers more than just unicode.
Per RFC3490:
,--
| An "internationalized domain name" (IDN) is a domain name in which
| every label is an internationalized label. This implies that every
| ASCII domain name is an IDN (which implies that it is possible for a
| name to be an IDN without it containing any non-ASCII characters).
'__
Without reviewing the mapping of the ASCII code points, limitations
expressed by this statement are not apparent and further depend upon
several other documents. In addition, few are as familiar with IDNA
as you, being one of the authors. This IDNA spec defines the
operation of a translation shim between an application and underlying
infrastructure dependent upon how the string is used. Technically,
this IDNA RFC has little to do with DKIM and offers an awkward way to
define a character set and a domain label limitation without further
clarifications. A concise way of expressing this definition is to
provide the ABNF character set permitted for use within the i=
parameter. When the d= parameter is an IDN, it does not matter with
respect to the function of DKIM and is completely irrelevant.
Unfortunately label definitions within STD13 (RFC1034) have changed
somewhat. The current sub-domain ABNF referenced from RFC2821
appears to be insufficient, however an IDN represents just a sub-set
of this definition. It would also appear on closer review, the
RFC3490 reference offers little additional clarity. DKIM should
better define the sub-domain ABNF instead.
ABNF:
letter = %x41-5A | %x61-7A ; A-Z | a-z
digit = %x30-39 ; 0-9
hyphen = %x2D ; "-"
ldh = letter | digit | hyphen
let-dig = letter | digit
sub-domain = let-dig [*61 ldh let-dig]
-Doug
_______________________________________________
NOTE WELL: This list operates according to
http://mipassoc.org/dkim/ietf-list-rules.html