2296 lines
55 KiB
Plaintext
2296 lines
55 KiB
Plaintext
|
|
|||
|
|
|||
|
Network Working Group S. Josefsson
|
|||
|
Internet-Draft February 2003
|
|||
|
Expires: August 2, 2003
|
|||
|
|
|||
|
|
|||
|
Nameprep and IDNA Test Vectors
|
|||
|
draft-josefsson-idn-test-vectors
|
|||
|
|
|||
|
Status of this Memo
|
|||
|
|
|||
|
This document is an Internet-Draft and is in full conformance with
|
|||
|
all provisions of Section 10 of RFC2026.
|
|||
|
|
|||
|
Internet-Drafts are working documents of the Internet Engineering
|
|||
|
Task Force (IETF), its areas, and its working groups. Note that
|
|||
|
other groups may also distribute working documents as
|
|||
|
Internet-Drafts.
|
|||
|
|
|||
|
Internet-Drafts are draft documents valid for a maximum of six months
|
|||
|
and may be updated, replaced, or obsoleted by other documents at any
|
|||
|
time. It is inappropriate to use Internet-Drafts as reference
|
|||
|
material or to cite them other than as "work in progress."
|
|||
|
|
|||
|
The list of current Internet-Drafts can be accessed at http://
|
|||
|
www.ietf.org/ietf/1id-abstracts.txt.
|
|||
|
|
|||
|
The list of Internet-Draft Shadow Directories can be accessed at
|
|||
|
http://www.ietf.org/shadow.html.
|
|||
|
|
|||
|
This Internet-Draft will expire on August 2, 2003.
|
|||
|
|
|||
|
Abstract
|
|||
|
|
|||
|
This document contains test vectors for Nameprep and IDNA.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 1]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
Table of Contents
|
|||
|
|
|||
|
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 4
|
|||
|
2. Format of Nameprep Test Vectors . . . . . . . . . . . . . . 5
|
|||
|
3. Format of IDNA Test Vectors . . . . . . . . . . . . . . . . 6
|
|||
|
4. Nameprep Test Vectors . . . . . . . . . . . . . . . . . . . 7
|
|||
|
4.1 Map to nothing . . . . . . . . . . . . . . . . . . . . . . . 7
|
|||
|
4.2 Case folding ASCII U+0043 U+0041 U+0046 U+0045 . . . . . . . 8
|
|||
|
4.3 Case folding 8bit U+00DF (german sharp s) . . . . . . . . . 8
|
|||
|
4.4 Case folding U+0130 (turkish capital I with dot) . . . . . . 9
|
|||
|
4.5 Case folding multibyte U+0143 U+037A . . . . . . . . . . . . 9
|
|||
|
4.6 Case folding U+2121 U+33C6 U+1D7BB . . . . . . . . . . . . . 10
|
|||
|
4.7 Normalization of U+006a U+030c U+00A0 U+00AA . . . . . . . . 10
|
|||
|
4.8 Case folding U+1FB7 and normalization . . . . . . . . . . . 11
|
|||
|
4.9 Self-reverting case folding U+01F0 and normalization . . . . 11
|
|||
|
4.10 Self-reverting case folding U+0390 and normalization . . . . 12
|
|||
|
4.11 Self-reverting case folding U+03B0 and normalization . . . . 12
|
|||
|
4.12 Self-reverting case folding U+1E96 and normalization . . . . 13
|
|||
|
4.13 Self-reverting case folding U+1F56 and normalization . . . . 13
|
|||
|
4.14 ASCII space character U+0020 . . . . . . . . . . . . . . . . 13
|
|||
|
4.15 Non-ASCII 8bit space character U+00A0 . . . . . . . . . . . 14
|
|||
|
4.16 Non-ASCII multibyte space character U+1680 . . . . . . . . . 14
|
|||
|
4.17 Non-ASCII multibyte space character U+2000 . . . . . . . . . 14
|
|||
|
4.18 Zero Width Space U+200b . . . . . . . . . . . . . . . . . . 15
|
|||
|
4.19 Non-ASCII multibyte space character U+3000 . . . . . . . . . 15
|
|||
|
4.20 ASCII control characters U+0010 U+007F . . . . . . . . . . . 15
|
|||
|
4.21 Non-ASCII 8bit control character U+0085 . . . . . . . . . . 16
|
|||
|
4.22 Non-ASCII multibyte control character U+180E . . . . . . . . 16
|
|||
|
4.23 Zero Width No-Break Space U+FEFF . . . . . . . . . . . . . . 16
|
|||
|
4.24 Non-ASCII control character U+1D175 . . . . . . . . . . . . 16
|
|||
|
4.25 Plane 0 private use character U+F123 . . . . . . . . . . . . 17
|
|||
|
4.26 Plane 15 private use character U+F1234 . . . . . . . . . . . 17
|
|||
|
4.27 Plane 16 private use character U+10F234 . . . . . . . . . . 17
|
|||
|
4.28 Non-character code point U+8FFFE . . . . . . . . . . . . . . 17
|
|||
|
4.29 Non-character code point U+10FFFF . . . . . . . . . . . . . 18
|
|||
|
4.30 Surrogate code U+DF42 . . . . . . . . . . . . . . . . . . . 18
|
|||
|
4.31 Non-plain text character U+FFFD . . . . . . . . . . . . . . 18
|
|||
|
4.32 Ideographic description character U+2FF5 . . . . . . . . . . 18
|
|||
|
4.33 Display property character U+0341 . . . . . . . . . . . . . 19
|
|||
|
4.34 Left-to-right mark U+200E . . . . . . . . . . . . . . . . . 19
|
|||
|
4.35 Deprecated U+202A . . . . . . . . . . . . . . . . . . . . . 19
|
|||
|
4.36 Language tagging character U+E0001 . . . . . . . . . . . . . 19
|
|||
|
4.37 Language tagging character U+E0042 . . . . . . . . . . . . . 20
|
|||
|
4.38 Bidi: RandALCat character U+05BE and LCat characters . . . . 20
|
|||
|
4.39 Bidi: RandALCat character U+FD50 and LCat characters . . . . 20
|
|||
|
4.40 Bidi: RandALCat character U+FB38 and LCat characters . . . . 21
|
|||
|
4.41 Bidi: RandALCat without trailing RandALCat U+0627 U+0031 . . 21
|
|||
|
4.42 Bidi: RandALCat character U+0627 U+0031 U+0628 . . . . . . . 21
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 2]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
4.43 Unassigned code point U+E0002 . . . . . . . . . . . . . . . 22
|
|||
|
4.44 Larger test (shrinking) . . . . . . . . . . . . . . . . . . 22
|
|||
|
4.45 Larger test (expanding) . . . . . . . . . . . . . . . . . . 23
|
|||
|
5. IDNA Test Vectors . . . . . . . . . . . . . . . . . . . . . 23
|
|||
|
5.1 Arabic (Egyptian) . . . . . . . . . . . . . . . . . . . . . 23
|
|||
|
5.2 Chinese (simplified) . . . . . . . . . . . . . . . . . . . . 24
|
|||
|
5.3 Chinese (traditional) . . . . . . . . . . . . . . . . . . . 24
|
|||
|
5.4 Czech . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
|
|||
|
5.5 Hebrew . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
|
|||
|
5.6 Hindi (Devanagari) . . . . . . . . . . . . . . . . . . . . . 25
|
|||
|
5.7 Japanese (kanji and hiragana) . . . . . . . . . . . . . . . 25
|
|||
|
5.8 Russian (Cyrillic) . . . . . . . . . . . . . . . . . . . . . 26
|
|||
|
5.9 Spanish . . . . . . . . . . . . . . . . . . . . . . . . . . 26
|
|||
|
5.10 Vietnamese . . . . . . . . . . . . . . . . . . . . . . . . . 27
|
|||
|
5.11 Japanese . . . . . . . . . . . . . . . . . . . . . . . . . . 27
|
|||
|
5.12 Japanese . . . . . . . . . . . . . . . . . . . . . . . . . . 27
|
|||
|
5.13 Japanese . . . . . . . . . . . . . . . . . . . . . . . . . . 28
|
|||
|
5.14 Japanese . . . . . . . . . . . . . . . . . . . . . . . . . . 28
|
|||
|
5.15 Japanese . . . . . . . . . . . . . . . . . . . . . . . . . . 28
|
|||
|
5.16 Japanese . . . . . . . . . . . . . . . . . . . . . . . . . . 29
|
|||
|
5.17 Japanese . . . . . . . . . . . . . . . . . . . . . . . . . . 29
|
|||
|
5.18 Greek . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
|
|||
|
5.19 Maltese (Malti) . . . . . . . . . . . . . . . . . . . . . . 29
|
|||
|
5.20 Russian (Cyrillic) . . . . . . . . . . . . . . . . . . . . . 30
|
|||
|
6. Security Considerations . . . . . . . . . . . . . . . . . . 30
|
|||
|
Author's Address . . . . . . . . . . . . . . . . . . . . . . 31
|
|||
|
Normative References . . . . . . . . . . . . . . . . . . . . 30
|
|||
|
Informative References . . . . . . . . . . . . . . . . . . . 30
|
|||
|
A. Nameprep test vectors in C syntax . . . . . . . . . . . . . 31
|
|||
|
B. IDNA test vectors in C syntax . . . . . . . . . . . . . . . 36
|
|||
|
Intellectual Property and Copyright Statements . . . . . . . 40
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 3]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
1. Introduction
|
|||
|
|
|||
|
The Nameprep and IDNA specifications lack thorough examples that
|
|||
|
would have aided in implementing them. This document act as a
|
|||
|
complement to those specifications providing such examples.
|
|||
|
|
|||
|
It should be pointed out that this document is not normative, and
|
|||
|
thus any errors in this document should not be treated as gospel that
|
|||
|
defines Nameprep nor IDNA. When conforming to the specification and
|
|||
|
generating output corresponding to values in this document is in
|
|||
|
conflict, implementations should conform to the specification.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 4]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
2. Format of Nameprep Test Vectors
|
|||
|
|
|||
|
The tests follow a certain syntax, described here by showing one
|
|||
|
complete example with comments intermixed. The comments are prefixed
|
|||
|
with the '#' character.
|
|||
|
|
|||
|
# First the (UTF-8) string is printed as a C octet string, with
|
|||
|
# characters [A-Za-z .0-9] shown inline and other characters shown
|
|||
|
# escaped with \xAB where AB is the hex sequence of that octet. The
|
|||
|
# number of octets are also shown.
|
|||
|
|
|||
|
in (length 3 bytes):
|
|||
|
\xE1\xBE\xB7
|
|||
|
|
|||
|
# The input is also printed as Unicode codepoints.
|
|||
|
|
|||
|
input (length 1):
|
|||
|
U+1fb7
|
|||
|
|
|||
|
# After printing the input, the nameprep steps starts. When the
|
|||
|
# string is modified, the specific operation that caused it is printed
|
|||
|
# along with the new string of Unicode code points.
|
|||
|
|
|||
|
# 1) Map -- For each character in the input, check if it has a mapping
|
|||
|
# and, if so, replace it with its mapping. This is described in
|
|||
|
# section 3.
|
|||
|
|
|||
|
Table B.2 maps U+1fb7 to U+03b1 U+0342 U+03b9.
|
|||
|
U+03b1 U+0342 U+03b9
|
|||
|
|
|||
|
# 2) Normalize -- Possibly normalize the result of step 1 using Unicode
|
|||
|
# normalization. This is described in section 4.
|
|||
|
|
|||
|
Unicode normalization with form KC maps string into:
|
|||
|
U+1fb6 U+03b9
|
|||
|
|
|||
|
# 3) Prohibit -- Check for any characters that are not allowed in the
|
|||
|
# output. If any are found, return an error. This is described in
|
|||
|
# section 5.
|
|||
|
|
|||
|
# 4) Check bidi -- Possibly check for right-to-left characters, and if
|
|||
|
# any are found, make sure that the whole string satisfies the
|
|||
|
# requirements for bidirectional strings. If the string does not
|
|||
|
# satisfy the requirements for bidirectional strings, return an
|
|||
|
# error. This is described in section 6.
|
|||
|
#
|
|||
|
# 1) The characters in section 5.8 MUST be prohibited.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 5]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
# 2) If a string contains any RandALCat character, the string MUST NOT
|
|||
|
# contain any LCat character.
|
|||
|
|
|||
|
# 3) If a string contains any RandALCat character, a RandALCat
|
|||
|
# character MUST be the first character of the string, and a
|
|||
|
# RandALCat character MUST be the last character of the string.
|
|||
|
|
|||
|
# The output is printed as Unicode codepoints.
|
|||
|
|
|||
|
output (length 2):
|
|||
|
U+1fb6 U+03b9
|
|||
|
|
|||
|
# And finally the output is printed as UTF-8
|
|||
|
|
|||
|
out (length 5 bytes):
|
|||
|
\xE1\xBE\xB6\xCE\xB9
|
|||
|
|
|||
|
|
|||
|
3. Format of IDNA Test Vectors
|
|||
|
|
|||
|
The tests follow a certain syntax, described here by showing one
|
|||
|
complete example with comments intermixed. The comments are prefixed
|
|||
|
with the '#' character.
|
|||
|
|
|||
|
# First the (UTF-8) string is printed as a C octet string, with
|
|||
|
# characters [A-Za-z .0-9] shown inline and other characters shown
|
|||
|
# escaped with \xAB where AB is the hex sequence of that octet. The
|
|||
|
# number of octets are also shown.
|
|||
|
|
|||
|
in (length 39 bytes):
|
|||
|
'Hello\x2DAnother\x2DWa'
|
|||
|
'y\x2D\xE3\x81\x9D\xE3\x82\x8C\xE3\x81\x9E\xE3\x82\x8C\xE3\x81'
|
|||
|
'\xAE\xE5\xA0\xB4\xE6\x89\x80
|
|||
|
|
|||
|
# The input is also printed as Unicode codepoints.
|
|||
|
|
|||
|
input (length 39):
|
|||
|
U+0048 U+0065 U+006c U+006c U+006f U+002d U+0041 U+006e
|
|||
|
U+006f U+0074 U+0068 U+0065 U+0072 U+002d U+0057 U+0061
|
|||
|
U+0079 U+002d U+305d U+308c U+305e U+308c U+306e U+5834
|
|||
|
U+6240
|
|||
|
|
|||
|
# After printing the input, the IDNA ToASCII step starts. The output
|
|||
|
# is printed as an ASCII string.
|
|||
|
|
|||
|
out: xn--hello-another-way--fc4qua05auwb3674vfr0b
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 6]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
4. Nameprep Test Vectors
|
|||
|
|
|||
|
4.1 Map to nothing
|
|||
|
|
|||
|
in (length 37 bytes):
|
|||
|
foo\xC2\xAD\xCD\x8F\xE1\xA0\x86\xE1\xA0\x8Bbar'
|
|||
|
'\xE2\x80\x8B\xE2\x81\xA0baz\xEF\xB8\x80\xEF\xB8\x88\xEF'
|
|||
|
'\xB8\x8F\xEF\xBB\xBF
|
|||
|
input (length 19):
|
|||
|
U+0066 U+006f U+006f U+00ad U+034f U+1806 U+180b U+0062
|
|||
|
U+0061 U+0072 U+200b U+2060 U+0062 U+0061 U+007a U+fe00
|
|||
|
U+fe08 U+fe0f U+feff
|
|||
|
|
|||
|
Table B.1 maps U+00ad to nothing.
|
|||
|
Table B.1 maps U+034f to nothing.
|
|||
|
Table B.1 maps U+1806 to nothing.
|
|||
|
Table B.1 maps U+180b to nothing.
|
|||
|
Table B.1 maps U+200b to nothing.
|
|||
|
Table B.1 maps U+2060 to nothing.
|
|||
|
Table B.1 maps U+fe00 to nothing.
|
|||
|
Table B.1 maps U+fe08 to nothing.
|
|||
|
Table B.1 maps U+fe0f to nothing.
|
|||
|
Table B.1 maps U+feff to nothing.
|
|||
|
U+0066 U+006f U+006f U+0062 U+0061 U+0072 U+0062 U+0061
|
|||
|
U+007a
|
|||
|
|
|||
|
output (length 9):
|
|||
|
U+0066 U+006f U+006f U+0062 U+0061 U+0072 U+0062 U+0061
|
|||
|
U+007a
|
|||
|
out (length 9 bytes):
|
|||
|
foobarbaz
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 7]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
4.2 Case folding ASCII U+0043 U+0041 U+0046 U+0045
|
|||
|
|
|||
|
in (length 4 bytes):
|
|||
|
CAFE
|
|||
|
input (length 4):
|
|||
|
U+0043 U+0041 U+0046 U+0045
|
|||
|
|
|||
|
Table B.2 maps U+0043 to U+0063.
|
|||
|
Table B.2 maps U+0041 to U+0061.
|
|||
|
Table B.2 maps U+0046 to U+0066.
|
|||
|
Table B.2 maps U+0045 to U+0065.
|
|||
|
U+0063 U+0061 U+0066 U+0065
|
|||
|
|
|||
|
output (length 4):
|
|||
|
U+0063 U+0061 U+0066 U+0065
|
|||
|
out (length 4 bytes):
|
|||
|
cafe
|
|||
|
|
|||
|
4.3 Case folding 8bit U+00DF (german sharp s)
|
|||
|
|
|||
|
in (length 2 bytes):
|
|||
|
\xC3\xDF
|
|||
|
input (length 1):
|
|||
|
U+00df
|
|||
|
|
|||
|
Table B.2 maps U+00df to U+0073 U+0073.
|
|||
|
U+0073 U+0073
|
|||
|
|
|||
|
output (length 2):
|
|||
|
U+0073 U+0073
|
|||
|
out (length 2 bytes):
|
|||
|
ss
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 8]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
4.4 Case folding U+0130 (turkish capital I with dot)
|
|||
|
|
|||
|
in (length 2 bytes):
|
|||
|
\xC4\xB0
|
|||
|
input (length 1):
|
|||
|
U+0130
|
|||
|
|
|||
|
Table B.2 maps U+0130 to U+0069 U+0307.
|
|||
|
U+0069 U+0307
|
|||
|
|
|||
|
output (length 2):
|
|||
|
U+0069 U+0307
|
|||
|
out (length 3 bytes):
|
|||
|
i\xCC\x87
|
|||
|
|
|||
|
4.5 Case folding multibyte U+0143 U+037A
|
|||
|
|
|||
|
in (length 4 bytes):
|
|||
|
\xC5\x83\xCD\xBA
|
|||
|
input (length 2):
|
|||
|
U+0143 U+037a
|
|||
|
|
|||
|
Table B.2 maps U+0143 to U+0144.
|
|||
|
Table B.2 maps U+037a to U+0020 U+03b9.
|
|||
|
U+0144 U+0020 U+03b9
|
|||
|
|
|||
|
output (length 3):
|
|||
|
U+0144 U+0020 U+03b9
|
|||
|
out (length 5 bytes):
|
|||
|
\xC5\x84 \xCE\xB9
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 9]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
4.6 Case folding U+2121 U+33C6 U+1D7BB
|
|||
|
|
|||
|
in (length 10 bytes):
|
|||
|
\xE2\x84\xA1\xE3\x8F\x86\xF0\x9D\x9E\xBB
|
|||
|
input (length 3):
|
|||
|
U+2121 U+33c6 U+1d7bb
|
|||
|
|
|||
|
Table B.2 maps U+2121 to U+0074 U+0065 U+006c.
|
|||
|
Table B.2 maps U+33c6 to U+0063 U+2215 U+006b U+0067.
|
|||
|
Table B.2 maps U+1d7bb to U+03c3.
|
|||
|
U+0074 U+0065 U+006c U+0063 U+2215 U+006b U+0067 U+03c3
|
|||
|
|
|||
|
|
|||
|
output (length 8):
|
|||
|
U+0074 U+0065 U+006c U+0063 U+2215 U+006b U+0067 U+03c3
|
|||
|
|
|||
|
out (length 11 bytes):
|
|||
|
telc\xE2\x88\x95kg\xCF\x83
|
|||
|
|
|||
|
4.7 Normalization of U+006a U+030c U+00A0 U+00AA
|
|||
|
|
|||
|
in (length 7 bytes):
|
|||
|
j\xCC\x8C\xC2\xA0\xC2\xAA
|
|||
|
input (length 4):
|
|||
|
U+006a U+030c U+00a0 U+00aa
|
|||
|
|
|||
|
Unicode normalization with form KC maps string into:
|
|||
|
U+01f0 U+0020 U+0061
|
|||
|
|
|||
|
output (length 3):
|
|||
|
U+01f0 U+0020 U+0061
|
|||
|
out (length 4 bytes):
|
|||
|
\xC7\xB0 a
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 10]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
4.8 Case folding U+1FB7 and normalization
|
|||
|
|
|||
|
in (length 3 bytes):
|
|||
|
\xE1\xBE\xB7
|
|||
|
input (length 1):
|
|||
|
U+1fb7
|
|||
|
|
|||
|
Table B.2 maps U+1fb7 to U+03b1 U+0342 U+03b9.
|
|||
|
U+03b1 U+0342 U+03b9
|
|||
|
Unicode normalization with form KC maps string into:
|
|||
|
U+1fb6 U+03b9
|
|||
|
|
|||
|
output (length 2):
|
|||
|
U+1fb6 U+03b9
|
|||
|
out (length 5 bytes):
|
|||
|
\xE1\xBE\xB6\xCE\xB9
|
|||
|
|
|||
|
4.9 Self-reverting case folding U+01F0 and normalization
|
|||
|
|
|||
|
in (length 2 bytes):
|
|||
|
\xC7\xF0
|
|||
|
input (length 1):
|
|||
|
U+01f0
|
|||
|
|
|||
|
Table B.2 maps U+01f0 to U+006a U+030c.
|
|||
|
U+006a U+030c
|
|||
|
Unicode normalization with form KC maps string into:
|
|||
|
U+01f0
|
|||
|
|
|||
|
output (length 1):
|
|||
|
U+01f0
|
|||
|
out (length 2 bytes):
|
|||
|
\xC7\xB0
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 11]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
4.10 Self-reverting case folding U+0390 and normalization
|
|||
|
|
|||
|
in (length 2 bytes):
|
|||
|
\xCE\x90
|
|||
|
input (length 1):
|
|||
|
U+0390
|
|||
|
|
|||
|
Table B.2 maps U+0390 to U+03b9 U+0308 U+0301.
|
|||
|
U+03b9 U+0308 U+0301
|
|||
|
Unicode normalization with form KC maps string into:
|
|||
|
U+0390
|
|||
|
|
|||
|
output (length 1):
|
|||
|
U+0390
|
|||
|
out (length 2 bytes):
|
|||
|
\xCE\x90
|
|||
|
|
|||
|
4.11 Self-reverting case folding U+03B0 and normalization
|
|||
|
|
|||
|
in (length 2 bytes):
|
|||
|
\xCE\xB0
|
|||
|
input (length 1):
|
|||
|
U+03b0
|
|||
|
|
|||
|
Table B.2 maps U+03b0 to U+03c5 U+0308 U+0301.
|
|||
|
U+03c5 U+0308 U+0301
|
|||
|
Unicode normalization with form KC maps string into:
|
|||
|
U+03b0
|
|||
|
|
|||
|
output (length 1):
|
|||
|
U+03b0
|
|||
|
out (length 2 bytes):
|
|||
|
\xCE\xB0
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 12]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
4.12 Self-reverting case folding U+1E96 and normalization
|
|||
|
|
|||
|
in (length 3 bytes):
|
|||
|
\xE1\xBA\x96
|
|||
|
input (length 1):
|
|||
|
U+1e96
|
|||
|
|
|||
|
Table B.2 maps U+1e96 to U+0068 U+0331.
|
|||
|
U+0068 U+0331
|
|||
|
Unicode normalization with form KC maps string into:
|
|||
|
U+1e96
|
|||
|
|
|||
|
output (length 1):
|
|||
|
U+1e96
|
|||
|
out (length 3 bytes):
|
|||
|
\xE1\xBA\x96
|
|||
|
|
|||
|
4.13 Self-reverting case folding U+1F56 and normalization
|
|||
|
|
|||
|
in (length 3 bytes):
|
|||
|
\xE1\xBD\x96
|
|||
|
input (length 1):
|
|||
|
U+1f56
|
|||
|
|
|||
|
Table B.2 maps U+1f56 to U+03c5 U+0313 U+0342.
|
|||
|
U+03c5 U+0313 U+0342
|
|||
|
Unicode normalization with form KC maps string into:
|
|||
|
U+1f56
|
|||
|
|
|||
|
output (length 1):
|
|||
|
U+1f56
|
|||
|
out (length 3 bytes):
|
|||
|
\xE1\xBD\x96
|
|||
|
|
|||
|
4.14 ASCII space character U+0020
|
|||
|
|
|||
|
in (length 1 bytes):
|
|||
|
|
|||
|
input (length 1):
|
|||
|
U+0020
|
|||
|
|
|||
|
|
|||
|
output (length 1):
|
|||
|
U+0020
|
|||
|
out (length 1 bytes):
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 13]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
4.15 Non-ASCII 8bit space character U+00A0
|
|||
|
|
|||
|
in (length 2 bytes):
|
|||
|
\xC2\xA0
|
|||
|
input (length 1):
|
|||
|
U+00a0
|
|||
|
|
|||
|
Unicode normalization with form KC maps string into:
|
|||
|
U+0020
|
|||
|
|
|||
|
output (length 1):
|
|||
|
U+0020
|
|||
|
out (length 1 bytes):
|
|||
|
|
|||
|
|
|||
|
4.16 Non-ASCII multibyte space character U+1680
|
|||
|
|
|||
|
in (length 3 bytes):
|
|||
|
\xE1\x9A\x80
|
|||
|
input (length 1):
|
|||
|
U+1680
|
|||
|
|
|||
|
Table C.1.2 prohibits string (character U+1680).
|
|||
|
|
|||
|
|
|||
|
4.17 Non-ASCII multibyte space character U+2000
|
|||
|
|
|||
|
in (length 3 bytes):
|
|||
|
\xE2\x80\x80
|
|||
|
input (length 1):
|
|||
|
U+2000
|
|||
|
|
|||
|
Unicode normalization with form KC maps string into:
|
|||
|
U+0020
|
|||
|
|
|||
|
output (length 1):
|
|||
|
U+0020
|
|||
|
out (length 1 bytes):
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 14]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
4.18 Zero Width Space U+200b
|
|||
|
|
|||
|
in (length 3 bytes):
|
|||
|
\xE2\x80\x8B
|
|||
|
input (length 1):
|
|||
|
U+200b
|
|||
|
|
|||
|
Table B.1 maps U+200b to nothing.
|
|||
|
|
|||
|
|
|||
|
output (length 0):
|
|||
|
|
|||
|
out (length 0 bytes):
|
|||
|
|
|||
|
|
|||
|
4.19 Non-ASCII multibyte space character U+3000
|
|||
|
|
|||
|
in (length 3 bytes):
|
|||
|
\xE3\x80\x80
|
|||
|
input (length 1):
|
|||
|
U+3000
|
|||
|
|
|||
|
Unicode normalization with form KC maps string into:
|
|||
|
U+0020
|
|||
|
|
|||
|
output (length 1):
|
|||
|
U+0020
|
|||
|
out (length 1 bytes):
|
|||
|
|
|||
|
|
|||
|
4.20 ASCII control characters U+0010 U+007F
|
|||
|
|
|||
|
in (length 2 bytes):
|
|||
|
\x10\x7F
|
|||
|
input (length 2):
|
|||
|
U+0010 U+007f
|
|||
|
|
|||
|
|
|||
|
output (length 2):
|
|||
|
U+0010 U+007f
|
|||
|
out (length 2 bytes):
|
|||
|
\x10\x7F
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 15]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
4.21 Non-ASCII 8bit control character U+0085
|
|||
|
|
|||
|
in (length 2 bytes):
|
|||
|
\xC2\x85
|
|||
|
input (length 1):
|
|||
|
U+0085
|
|||
|
|
|||
|
Table C.2.2 prohibits string (character U+0085).
|
|||
|
|
|||
|
|
|||
|
4.22 Non-ASCII multibyte control character U+180E
|
|||
|
|
|||
|
in (length 3 bytes):
|
|||
|
\xE1\xA0\x8E
|
|||
|
input (length 1):
|
|||
|
U+180e
|
|||
|
|
|||
|
Table C.2.2 prohibits string (character U+180e).
|
|||
|
|
|||
|
|
|||
|
4.23 Zero Width No-Break Space U+FEFF
|
|||
|
|
|||
|
in (length 3 bytes):
|
|||
|
\xEF\xBB\xBF
|
|||
|
input (length 1):
|
|||
|
U+feff
|
|||
|
|
|||
|
Table B.1 maps U+feff to nothing.
|
|||
|
|
|||
|
|
|||
|
output (length 0):
|
|||
|
|
|||
|
out (length 0 bytes):
|
|||
|
|
|||
|
|
|||
|
4.24 Non-ASCII control character U+1D175
|
|||
|
|
|||
|
in (length 4 bytes):
|
|||
|
\xF0\x9D\x85\xB5
|
|||
|
input (length 1):
|
|||
|
U+1d175
|
|||
|
|
|||
|
Table C.2.2 prohibits string (character U+1d175).
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 16]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
4.25 Plane 0 private use character U+F123
|
|||
|
|
|||
|
in (length 3 bytes):
|
|||
|
\xEF\x84\xA3
|
|||
|
input (length 1):
|
|||
|
U+f123
|
|||
|
|
|||
|
Table C.3 prohibits string (character U+f123).
|
|||
|
|
|||
|
|
|||
|
4.26 Plane 15 private use character U+F1234
|
|||
|
|
|||
|
in (length 4 bytes):
|
|||
|
\xF3\xB1\x88\xB4
|
|||
|
input (length 1):
|
|||
|
U+f1234
|
|||
|
|
|||
|
Table C.3 prohibits string (character U+f1234).
|
|||
|
|
|||
|
|
|||
|
4.27 Plane 16 private use character U+10F234
|
|||
|
|
|||
|
in (length 4 bytes):
|
|||
|
\xF4\x8F\x88\xB4
|
|||
|
input (length 1):
|
|||
|
U+10f234
|
|||
|
|
|||
|
Table C.3 prohibits string (character U+10f234).
|
|||
|
|
|||
|
|
|||
|
4.28 Non-character code point U+8FFFE
|
|||
|
|
|||
|
in (length 4 bytes):
|
|||
|
\xF2\x8F\xBF\xBE
|
|||
|
input (length 1):
|
|||
|
U+8fffe
|
|||
|
|
|||
|
Table C.4 prohibits string (character U+8fffe).
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 17]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
4.29 Non-character code point U+10FFFF
|
|||
|
|
|||
|
in (length 4 bytes):
|
|||
|
\xF4\x8F\xBF\xBF
|
|||
|
input (length 1):
|
|||
|
U+10ffff
|
|||
|
|
|||
|
Table C.4 prohibits string (character U+10ffff).
|
|||
|
|
|||
|
|
|||
|
4.30 Surrogate code U+DF42
|
|||
|
|
|||
|
in (length 3 bytes):
|
|||
|
\xED\xBD\x82
|
|||
|
input (length 1):
|
|||
|
U+df42
|
|||
|
|
|||
|
Table C.5 prohibits string (character U+df42).
|
|||
|
|
|||
|
|
|||
|
4.31 Non-plain text character U+FFFD
|
|||
|
|
|||
|
in (length 3 bytes):
|
|||
|
\xEF\xBF\xBD
|
|||
|
input (length 1):
|
|||
|
U+fffd
|
|||
|
|
|||
|
Table C.6 prohibits string (character U+fffd).
|
|||
|
|
|||
|
|
|||
|
4.32 Ideographic description character U+2FF5
|
|||
|
|
|||
|
in (length 3 bytes):
|
|||
|
\xE2\xBF\xB5
|
|||
|
input (length 1):
|
|||
|
U+2ff5
|
|||
|
|
|||
|
Table C.7 prohibits string (character U+2ff5).
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 18]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
4.33 Display property character U+0341
|
|||
|
|
|||
|
in (length 2 bytes):
|
|||
|
\xCD\x81
|
|||
|
input (length 1):
|
|||
|
U+0341
|
|||
|
|
|||
|
Unicode normalization with form KC maps string into:
|
|||
|
U+0301
|
|||
|
|
|||
|
output (length 1):
|
|||
|
U+0301
|
|||
|
out (length 2 bytes):
|
|||
|
\xCC\x81
|
|||
|
|
|||
|
4.34 Left-to-right mark U+200E
|
|||
|
|
|||
|
in (length 3 bytes):
|
|||
|
\xE2\x80\x8E
|
|||
|
input (length 1):
|
|||
|
U+200e
|
|||
|
|
|||
|
Table C.8 prohibits string (character U+200e).
|
|||
|
|
|||
|
|
|||
|
4.35 Deprecated U+202A
|
|||
|
|
|||
|
in (length 3 bytes):
|
|||
|
\xE2\x80\xAA
|
|||
|
input (length 1):
|
|||
|
U+202a
|
|||
|
|
|||
|
Table C.8 prohibits string (character U+202a).
|
|||
|
|
|||
|
|
|||
|
4.36 Language tagging character U+E0001
|
|||
|
|
|||
|
in (length 4 bytes):
|
|||
|
\xF3\xA0\x80\x81
|
|||
|
input (length 1):
|
|||
|
U+e0001
|
|||
|
|
|||
|
Table C.9 prohibits string (character U+e0001).
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 19]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
4.37 Language tagging character U+E0042
|
|||
|
|
|||
|
in (length 4 bytes):
|
|||
|
\xF3\xA0\x81\x82
|
|||
|
input (length 1):
|
|||
|
U+e0042
|
|||
|
|
|||
|
Table C.9 prohibits string (character U+e0042).
|
|||
|
|
|||
|
|
|||
|
4.38 Bidi: RandALCat character U+05BE and LCat characters
|
|||
|
|
|||
|
in (length 8 bytes):
|
|||
|
foo\xD6\xBEbar
|
|||
|
input (length 7):
|
|||
|
U+0066 U+006f U+006f U+05be U+0062 U+0061 U+0072
|
|||
|
|
|||
|
String contains both L and RAL characters.
|
|||
|
|
|||
|
|
|||
|
4.39 Bidi: RandALCat character U+FD50 and LCat characters
|
|||
|
|
|||
|
in (length 9 bytes):
|
|||
|
foo\xEF\xB5\x90bar
|
|||
|
input (length 7):
|
|||
|
U+0066 U+006f U+006f U+fd50 U+0062 U+0061 U+0072
|
|||
|
|
|||
|
Unicode normalization with form KC maps string into:
|
|||
|
U+0066 U+006f U+006f U+062a U+062c U+0645 U+0062 U+0061
|
|||
|
U+0072
|
|||
|
String contains both L and RAL characters.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 20]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
4.40 Bidi: RandALCat character U+FB38 and LCat characters
|
|||
|
|
|||
|
in (length 9 bytes):
|
|||
|
foo\xEF\xB9\xB6bar
|
|||
|
input (length 7):
|
|||
|
U+0066 U+006f U+006f U+fe76 U+0062 U+0061 U+0072
|
|||
|
|
|||
|
Unicode normalization with form KC maps string into:
|
|||
|
U+0066 U+006f U+006f U+0020 U+064e U+0062 U+0061 U+0072
|
|||
|
|
|||
|
|
|||
|
output (length 8):
|
|||
|
U+0066 U+006f U+006f U+0020 U+064e U+0062 U+0061 U+0072
|
|||
|
|
|||
|
out (length 9 bytes):
|
|||
|
foo \xD9\x8Ebar
|
|||
|
|
|||
|
4.41 Bidi: RandALCat without trailing RandALCat U+0627 U+0031
|
|||
|
|
|||
|
in (length 3 bytes):
|
|||
|
\xD8\xA71
|
|||
|
input (length 2):
|
|||
|
U+0627 U+0031
|
|||
|
|
|||
|
Bidi string does not start/end with RAL characters.
|
|||
|
|
|||
|
|
|||
|
4.42 Bidi: RandALCat character U+0627 U+0031 U+0628
|
|||
|
|
|||
|
in (length 5 bytes):
|
|||
|
\xD8\xA71\xD8\xA8
|
|||
|
input (length 3):
|
|||
|
U+0627 U+0031 U+0628
|
|||
|
|
|||
|
|
|||
|
output (length 3):
|
|||
|
U+0627 U+0031 U+0628
|
|||
|
out (length 5 bytes):
|
|||
|
\xD8\xA71\xD8\xA8
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 21]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
4.43 Unassigned code point U+E0002
|
|||
|
|
|||
|
in (length 4 bytes):
|
|||
|
\xF3\xA0\x80\x82
|
|||
|
input (length 1):
|
|||
|
U+e0002
|
|||
|
|
|||
|
Table A.1 prohibits string (unassigned character U+e0002).
|
|||
|
|
|||
|
|
|||
|
4.44 Larger test (shrinking)
|
|||
|
|
|||
|
in (length 22 bytes):
|
|||
|
X\xC2\xAD\xC3\xDF\xC4\xB0\xE2\x84\xA1j\xCC\x8C\xC2\xA0\xC2'
|
|||
|
'\xAA\xCE\xB0\xE2\x80\x80
|
|||
|
input (length 11):
|
|||
|
U+0058 U+00ad U+00df U+0130 U+2121 U+006a U+030c U+00a0
|
|||
|
U+00aa U+03b0 U+2000
|
|||
|
|
|||
|
Table B.1 maps U+00ad to nothing.
|
|||
|
U+0058 U+00df U+0130 U+2121 U+006a U+030c U+00a0 U+00aa
|
|||
|
U+03b0 U+2000
|
|||
|
Table B.2 maps U+0058 to U+0078.
|
|||
|
Table B.2 maps U+00df to U+0073 U+0073.
|
|||
|
Table B.2 maps U+0130 to U+0069 U+0307.
|
|||
|
Table B.2 maps U+2121 to U+0074 U+0065 U+006c.
|
|||
|
Table B.2 maps U+03b0 to U+03c5 U+0308 U+0301.
|
|||
|
U+0078 U+0073 U+0073 U+0069 U+0307 U+0074 U+0065 U+006c
|
|||
|
U+006a U+030c U+00a0 U+00aa U+03c5 U+0308 U+0301 U+2000
|
|||
|
|
|||
|
Unicode normalization with form KC maps string into:
|
|||
|
U+0078 U+0073 U+0073 U+0069 U+0307 U+0074 U+0065 U+006c
|
|||
|
U+01f0 U+0020 U+0061 U+03b0 U+0020
|
|||
|
|
|||
|
output (length 13):
|
|||
|
U+0078 U+0073 U+0073 U+0069 U+0307 U+0074 U+0065 U+006c
|
|||
|
U+01f0 U+0020 U+0061 U+03b0 U+0020
|
|||
|
out (length 16 bytes):
|
|||
|
xssi\xCC\x87tel\xC7\xB0 a\xCE\xB0
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 22]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
4.45 Larger test (expanding)
|
|||
|
|
|||
|
in (length 17 bytes):
|
|||
|
X\xC3\xDF\xE3\x8C\x96\xC4\xB0\xE2\x84\xA1\xE2\x92\x9F\xE3\x8C'
|
|||
|
'\x80
|
|||
|
input (length 7):
|
|||
|
U+0058 U+00df U+3316 U+0130 U+2121 U+249f U+3300
|
|||
|
|
|||
|
Table B.2 maps U+0058 to U+0078.
|
|||
|
Table B.2 maps U+00df to U+0073 U+0073.
|
|||
|
Table B.2 maps U+0130 to U+0069 U+0307.
|
|||
|
Table B.2 maps U+2121 to U+0074 U+0065 U+006c.
|
|||
|
U+0078 U+0073 U+0073 U+3316 U+0069 U+0307 U+0074 U+0065
|
|||
|
U+006c U+249f U+3300
|
|||
|
Unicode normalization with form KC maps string into:
|
|||
|
U+0078 U+0073 U+0073 U+30ad U+30ed U+30e1 U+30fc U+30c8
|
|||
|
U+30eb U+0069 U+0307 U+0074 U+0065 U+006c U+0028 U+0064
|
|||
|
U+0029 U+30a2 U+30d1 U+30fc U+30c8
|
|||
|
|
|||
|
output (length 21):
|
|||
|
U+0078 U+0073 U+0073 U+30ad U+30ed U+30e1 U+30fc U+30c8
|
|||
|
U+30eb U+0069 U+0307 U+0074 U+0065 U+006c U+0028 U+0064
|
|||
|
U+0029 U+30a2 U+30d1 U+30fc U+30c8
|
|||
|
out (length 42 bytes):
|
|||
|
xss\xE3\x82\xAD\xE3\x83\xAD\xE3\x83\xA1\xE3\x83\xBC\xE3'
|
|||
|
'\x83\x88\xE3\x83\xABi\xCC\x87tel\x28d\x29\xE3\x82'
|
|||
|
'\xA2\xE3\x83\x91\xE3\x83\xBC\xE3\x83\x88
|
|||
|
|
|||
|
5. IDNA Test Vectors
|
|||
|
|
|||
|
5.1 Arabic (Egyptian)
|
|||
|
|
|||
|
in (length 34 bytes):
|
|||
|
'\xD9\x84\xD9\x8A\xD9\x87\xD9\x85\xD8\xA7\xD8\xA8\xD8\xAA\xD9\x83'
|
|||
|
'\xD9\x84\xD9\x85\xD9\x88\xD8\xB4\xD8\xB9\xD8\xB1\xD8\xA8\xD9\x8A'
|
|||
|
'\xD8\x9F
|
|||
|
input (length 34):
|
|||
|
U+0644 U+064a U+0647 U+0645 U+0627 U+0628 U+062a U+0643
|
|||
|
U+0644 U+0645 U+0648 U+0634 U+0639 U+0631 U+0628 U+064a
|
|||
|
U+061f
|
|||
|
|
|||
|
out: xn--egbpdaj6bu4bxfgehfvwxn
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 23]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
5.2 Chinese (simplified)
|
|||
|
|
|||
|
in (length 27 bytes):
|
|||
|
'\xE4\xBB\x96\xE4\xBB\xAC\xE4\xB8\xBA\xE4\xBB\x80\xE4\xB9\x88\xE4'
|
|||
|
'\xB8\x8D\xE8\xAF\xB4\xE4\xB8\xAD\xE6\x96\x87
|
|||
|
input (length 27):
|
|||
|
U+4ed6 U+4eec U+4e3a U+4ec0 U+4e48 U+4e0d U+8bf4 U+4e2d
|
|||
|
U+6587
|
|||
|
|
|||
|
out: xn--ihqwcrb4cv8a8dqg056pqjye
|
|||
|
|
|||
|
|
|||
|
5.3 Chinese (traditional)
|
|||
|
|
|||
|
in (length 27 bytes):
|
|||
|
'\xE4\xBB\x96\xE5\x80\x91\xE7\x88\xB2\xE4\xBB\x80\xE9\xBA\xBD\xE4'
|
|||
|
'\xB8\x8D\xE8\xAA\xAA\xE4\xB8\xAD\xE6\x96\x87
|
|||
|
input (length 27):
|
|||
|
U+4ed6 U+5011 U+7232 U+4ec0 U+9ebd U+4e0d U+8aaa U+4e2d
|
|||
|
U+6587
|
|||
|
|
|||
|
out: xn--ihqwctvzc91f659drss3x8bo0yb
|
|||
|
|
|||
|
|
|||
|
5.4 Czech
|
|||
|
|
|||
|
in (length 26 bytes):
|
|||
|
'Pro\xC4\x8Dprost\xC4\x9Bneml'
|
|||
|
'uv\xC3\xAD\xC4\x8Desky
|
|||
|
input (length 26):
|
|||
|
U+0050 U+0072 U+006f U+010d U+0070 U+0072 U+006f U+0073
|
|||
|
U+0074 U+011b U+006e U+0065 U+006d U+006c U+0075 U+0076
|
|||
|
U+00ed U+010d U+0065 U+0073 U+006b U+0079
|
|||
|
|
|||
|
out: xn--proprostnemluvesky-uyb24dma41a
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 24]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
5.5 Hebrew
|
|||
|
|
|||
|
in (length 44 bytes):
|
|||
|
'\xD7\x9C\xD7\x9E\xD7\x94\xD7\x94\xD7\x9D\xD7\xA4\xD7\xA9\xD7\x95'
|
|||
|
'\xD7\x98\xD7\x9C\xD7\x90\xD7\x9E\xD7\x93\xD7\x91\xD7\xA8\xD7\x99'
|
|||
|
'\xD7\x9D\xD7\xA2\xD7\x91\xD7\xA8\xD7\x99\xD7\xAA
|
|||
|
input (length 44):
|
|||
|
U+05dc U+05de U+05d4 U+05d4 U+05dd U+05e4 U+05e9 U+05d5
|
|||
|
U+05d8 U+05dc U+05d0 U+05de U+05d3 U+05d1 U+05e8 U+05d9
|
|||
|
U+05dd U+05e2 U+05d1 U+05e8 U+05d9 U+05ea
|
|||
|
|
|||
|
out: xn--4dbcagdahymbxekheh6e0a7fei0b
|
|||
|
|
|||
|
|
|||
|
5.6 Hindi (Devanagari)
|
|||
|
|
|||
|
in (length 90 bytes):
|
|||
|
'\xE0\xA4\xAF\xE0\xA4\xB9\xE0\xA4\xB2\xE0\xA5\x8B\xE0\xA4\x97\xE0'
|
|||
|
'\xA4\xB9\xE0\xA4\xBF\xE0\xA4\xA8\xE0\xA5\x8D\xE0\xA4\xA6\xE0\xA5'
|
|||
|
'\x80\xE0\xA4\x95\xE0\xA5\x8D\xE0\xA4\xAF\xE0\xA5\x8B\xE0\xA4\x82'
|
|||
|
'\xE0\xA4\xA8\xE0\xA4\xB9\xE0\xA5\x80\xE0\xA4\x82\xE0\xA4\xAC\xE0'
|
|||
|
'\xA5\x8B\xE0\xA4\xB2\xE0\xA4\xB8\xE0\xA4\x95\xE0\xA4\xA4\xE0\xA5'
|
|||
|
'\x87\xE0\xA4\xB9\xE0\xA5\x88\xE0\xA4\x82
|
|||
|
input (length 90):
|
|||
|
U+092f U+0939 U+0932 U+094b U+0917 U+0939 U+093f U+0928
|
|||
|
U+094d U+0926 U+0940 U+0915 U+094d U+092f U+094b U+0902
|
|||
|
U+0928 U+0939 U+0940 U+0902 U+092c U+094b U+0932 U+0938
|
|||
|
U+0915 U+0924 U+0947 U+0939 U+0948 U+0902
|
|||
|
|
|||
|
out: xn--i1baa7eci9glrd9b2ae1bj0hfcgg6iyaf8o0a1dig0cd
|
|||
|
|
|||
|
|
|||
|
5.7 Japanese (kanji and hiragana)
|
|||
|
|
|||
|
in (length 54 bytes):
|
|||
|
'\xE3\x81\xAA\xE3\x81\x9C\xE3\x81\xBF\xE3\x82\x93\xE3\x81\xAA\xE6'
|
|||
|
'\x97\xA5\xE6\x9C\xAC\xE8\xAA\x9E\xE3\x82\x92\xE8\xA9\xB1\xE3\x81'
|
|||
|
'\x97\xE3\x81\xA6\xE3\x81\x8F\xE3\x82\x8C\xE3\x81\xAA\xE3\x81\x84'
|
|||
|
'\xE3\x81\xAE\xE3\x81\x8B
|
|||
|
input (length 54):
|
|||
|
U+306a U+305c U+307f U+3093 U+306a U+65e5 U+672c U+8a9e
|
|||
|
U+3092 U+8a71 U+3057 U+3066 U+304f U+308c U+306a U+3044
|
|||
|
U+306e U+304b
|
|||
|
|
|||
|
out: xn--n8jok5ay5dzabd5bym9f0cm5685rrjetr6pdxa
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 25]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
5.8 Russian (Cyrillic)
|
|||
|
|
|||
|
in (length 56 bytes):
|
|||
|
'\xD0\xBF\xD0\xBE\xD1\x87\xD0\xB5\xD0\xBC\xD1\x83\xD0\xB6\xD0\xB5'
|
|||
|
'\xD0\xBE\xD0\xBD\xD0\xB8\xD0\xBD\xD0\xB5\xD0\xB3\xD0\xBE\xD0\xB2'
|
|||
|
'\xD0\xBE\xD1\x80\xD1\x8F\xD1\x82\xD0\xBF\xD0\xBE\xD1\x80\xD1\x83'
|
|||
|
'\xD1\x81\xD1\x81\xD0\xBA\xD0\xB8
|
|||
|
input (length 56):
|
|||
|
U+043f U+043e U+0447 U+0435 U+043c U+0443 U+0436 U+0435
|
|||
|
U+043e U+043d U+0438 U+043d U+0435 U+0433 U+043e U+0432
|
|||
|
U+043e U+0440 U+044f U+0442 U+043f U+043e U+0440 U+0443
|
|||
|
U+0441 U+0441 U+043a U+0438
|
|||
|
|
|||
|
out: xn--b1abfaaepdrnnbgefbadotcwatmq2g4l
|
|||
|
|
|||
|
|
|||
|
5.9 Spanish
|
|||
|
|
|||
|
in (length 42 bytes):
|
|||
|
'Porqu\xC3\xA9nopuedens'
|
|||
|
'implementehablar'
|
|||
|
'enEspa\xC3\xB1ol
|
|||
|
input (length 42):
|
|||
|
U+0050 U+006f U+0072 U+0071 U+0075 U+00e9 U+006e U+006f
|
|||
|
U+0070 U+0075 U+0065 U+0064 U+0065 U+006e U+0073 U+0069
|
|||
|
U+006d U+0070 U+006c U+0065 U+006d U+0065 U+006e U+0074
|
|||
|
U+0065 U+0068 U+0061 U+0062 U+006c U+0061 U+0072 U+0065
|
|||
|
U+006e U+0045 U+0073 U+0070 U+0061 U+00f1 U+006f U+006c
|
|||
|
|
|||
|
|
|||
|
out: xn--porqunopuedensimplementehablarenespaol-fmd56a
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 26]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
5.10 Vietnamese
|
|||
|
|
|||
|
in (length 45 bytes):
|
|||
|
'T\xE1\xBA\xA1isaoh\xE1\xBB\x8Dkh\xC3\xB4'
|
|||
|
'ngth\xE1\xBB\x83ch\xE1\xBB\x89n\xC3\xB3i'
|
|||
|
'ti\xE1\xBA\xBFngVi\xE1\xBB\x87t
|
|||
|
input (length 45):
|
|||
|
U+0054 U+1ea1 U+0069 U+0073 U+0061 U+006f U+0068 U+1ecd
|
|||
|
U+006b U+0068 U+00f4 U+006e U+0067 U+0074 U+0068 U+1ec3
|
|||
|
U+0063 U+0068 U+1ec9 U+006e U+00f3 U+0069 U+0074 U+0069
|
|||
|
U+1ebf U+006e U+0067 U+0056 U+0069 U+1ec7 U+0074
|
|||
|
|
|||
|
out: xn--tisaohkhngthchnitingvit-kjcr8268qyxafd2f1b9g
|
|||
|
|
|||
|
|
|||
|
5.11 Japanese
|
|||
|
|
|||
|
in (length 20 bytes):
|
|||
|
'3\xE5\xB9\xB4B\xE7\xB5\x84\xE9\x87\x91\xE5\x85\xAB\xE5\x85'
|
|||
|
'\x88\xE7\x94\x9F
|
|||
|
input (length 20):
|
|||
|
U+0033 U+5e74 U+0042 U+7d44 U+91d1 U+516b U+5148 U+751f
|
|||
|
|
|||
|
|
|||
|
out: xn--3b-ww4c5e180e575a65lsy2b
|
|||
|
|
|||
|
|
|||
|
5.12 Japanese
|
|||
|
|
|||
|
in (length 34 bytes):
|
|||
|
'\xE5\xAE\x89\xE5\xAE\xA4\xE5\xA5\x88\xE7\xBE\x8E\xE6\x81\xB5\x2D'
|
|||
|
'with\x2DSUPER\x2DMONKE'
|
|||
|
'YS
|
|||
|
input (length 34):
|
|||
|
U+5b89 U+5ba4 U+5948 U+7f8e U+6075 U+002d U+0077 U+0069
|
|||
|
U+0074 U+0068 U+002d U+0053 U+0055 U+0050 U+0045 U+0052
|
|||
|
U+002d U+004d U+004f U+004e U+004b U+0045 U+0059 U+0053
|
|||
|
|
|||
|
|
|||
|
out: xn---with-super-monkeys-pc58ag80a8qai00g7n9n
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 27]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
5.13 Japanese
|
|||
|
|
|||
|
in (length 39 bytes):
|
|||
|
'Hello\x2DAnother\x2DWa'
|
|||
|
'y\x2D\xE3\x81\x9D\xE3\x82\x8C\xE3\x81\x9E\xE3\x82\x8C\xE3\x81'
|
|||
|
'\xAE\xE5\xA0\xB4\xE6\x89\x80
|
|||
|
input (length 39):
|
|||
|
U+0048 U+0065 U+006c U+006c U+006f U+002d U+0041 U+006e
|
|||
|
U+006f U+0074 U+0068 U+0065 U+0072 U+002d U+0057 U+0061
|
|||
|
U+0079 U+002d U+305d U+308c U+305e U+308c U+306e U+5834
|
|||
|
U+6240
|
|||
|
|
|||
|
out: xn--hello-another-way--fc4qua05auwb3674vfr0b
|
|||
|
|
|||
|
|
|||
|
5.14 Japanese
|
|||
|
|
|||
|
in (length 22 bytes):
|
|||
|
'\xE3\x81\xB2\xE3\x81\xA8\xE3\x81\xA4\xE5\xB1\x8B\xE6\xA0\xB9\xE3'
|
|||
|
'\x81\xAE\xE4\xB8\x8B2
|
|||
|
input (length 22):
|
|||
|
U+3072 U+3068 U+3064 U+5c4b U+6839 U+306e U+4e0b U+0032
|
|||
|
|
|||
|
|
|||
|
out: xn--2-u9tlzr9756bt3uc0v
|
|||
|
|
|||
|
|
|||
|
5.15 Japanese
|
|||
|
|
|||
|
in (length 23 bytes):
|
|||
|
'Maji\xE3\x81\xA7Koi\xE3\x81\x99\xE3\x82\x8B'
|
|||
|
'5\xE7\xA7\x92\xE5\x89\x8D
|
|||
|
input (length 23):
|
|||
|
U+004d U+0061 U+006a U+0069 U+3067 U+004b U+006f U+0069
|
|||
|
U+3059 U+308b U+0035 U+79d2 U+524d
|
|||
|
|
|||
|
out: xn--majikoi5-783gue6qz075azm5e
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 28]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
5.16 Japanese
|
|||
|
|
|||
|
in (length 23 bytes):
|
|||
|
'\xE3\x83\x91\xE3\x83\x95\xE3\x82\xA3\xE3\x83\xBCde\xE3\x83'
|
|||
|
'\xAB\xE3\x83\xB3\xE3\x83\x90
|
|||
|
input (length 23):
|
|||
|
U+30d1 U+30d5 U+30a3 U+30fc U+0064 U+0065 U+30eb U+30f3
|
|||
|
U+30d0
|
|||
|
|
|||
|
out: xn--de-jg4avhby1noc0d
|
|||
|
|
|||
|
|
|||
|
5.17 Japanese
|
|||
|
|
|||
|
in (length 21 bytes):
|
|||
|
'\xE3\x81\x9D\xE3\x81\xAE\xE3\x82\xB9\xE3\x83\x94\xE3\x83\xBC\xE3'
|
|||
|
'\x83\x89\xE3\x81\xA7
|
|||
|
input (length 21):
|
|||
|
U+305d U+306e U+30b9 U+30d4 U+30fc U+30c9 U+3067
|
|||
|
|
|||
|
out: xn--d9juau41awczczp
|
|||
|
|
|||
|
|
|||
|
5.18 Greek
|
|||
|
|
|||
|
in (length 16 bytes):
|
|||
|
'\xCE\xB5\xCE\xBB\xCE\xBB\xCE\xB7\xCE\xBD\xCE\xB9\xCE\xBA\xCE\xAC
|
|||
|
input (length 16):
|
|||
|
U+03b5 U+03bb U+03bb U+03b7 U+03bd U+03b9 U+03ba U+03ac
|
|||
|
|
|||
|
|
|||
|
out: xn--hxargifdar
|
|||
|
|
|||
|
|
|||
|
5.19 Maltese (Malti)
|
|||
|
|
|||
|
in (length 13 bytes):
|
|||
|
'bon\xC4\xA1usa\xC4\xA7\xC4\xA7a
|
|||
|
input (length 13):
|
|||
|
U+0062 U+006f U+006e U+0121 U+0075 U+0073 U+0061 U+0127
|
|||
|
U+0127 U+0061
|
|||
|
|
|||
|
out: xn--bonusaa-5bb1da
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 29]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
5.20 Russian (Cyrillic)
|
|||
|
|
|||
|
in (length 56 bytes):
|
|||
|
'\xD0\xBF\xD0\xBE\xD1\x87\xD0\xB5\xD0\xBC\xD1\x83\xD0\xB6\xD0\xB5'
|
|||
|
'\xD0\xBE\xD0\xBD\xD0\xB8\xD0\xBD\xD0\xB5\xD0\xB3\xD0\xBE\xD0\xB2'
|
|||
|
'\xD0\xBE\xD1\x80\xD1\x8F\xD1\x82\xD0\xBF\xD0\xBE\xD1\x80\xD1\x83'
|
|||
|
'\xD1\x81\xD1\x81\xD0\xBA\xD0\xB8
|
|||
|
input (length 56):
|
|||
|
U+043f U+043e U+0447 U+0435 U+043c U+0443 U+0436 U+0435
|
|||
|
U+043e U+043d U+0438 U+043d U+0435 U+0433 U+043e U+0432
|
|||
|
U+043e U+0440 U+044f U+0442 U+043f U+043e U+0440 U+0443
|
|||
|
U+0441 U+0441 U+043a U+0438
|
|||
|
|
|||
|
out: xn--b1abfaaepdrnnbgefbadotcwatmq2g4l
|
|||
|
|
|||
|
|
|||
|
6. Security Considerations
|
|||
|
|
|||
|
The security considerations from Nameprep and IDNA are inherited.
|
|||
|
|
|||
|
These test vectors are not believed to introduce new security
|
|||
|
considerations nor disrupt the operation of the Internet, but may
|
|||
|
expose security weaknesses in existing implementations. Any such
|
|||
|
incident should not be regarded as a problem with this document,
|
|||
|
though, but rather taken as evidence that this document served its
|
|||
|
purpose.
|
|||
|
|
|||
|
Normative References
|
|||
|
|
|||
|
[1] Hoffman, P. and M. Blanchet, "Nameprep: A Stringprep Profile for
|
|||
|
Internationalized Domain Names (IDN)", RFC 3491, March 2003.
|
|||
|
|
|||
|
[2] Faltstrom, P., Hoffman, P. and A. Costello, "Internationalizing
|
|||
|
Domain Names in Applications (IDNA)", RFC 3490, March 2003.
|
|||
|
|
|||
|
Informative References
|
|||
|
|
|||
|
[3] Costello, A., "Punycode: A Bootstring encoding of Unicode for
|
|||
|
Internationalized Domain Names in Applications (IDNA)", RFC
|
|||
|
3492, March 2003.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 30]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
Author's Address
|
|||
|
|
|||
|
Simon Josefsson
|
|||
|
Drottningholmsv. 70
|
|||
|
Stockholm 112 42
|
|||
|
Sweden
|
|||
|
|
|||
|
EMail: simon@josefsson.org
|
|||
|
|
|||
|
Acknowledgments
|
|||
|
|
|||
|
Some IDNA test vectors were borrowed from Punycode [3].
|
|||
|
|
|||
|
Appendix A. Nameprep test vectors in C syntax
|
|||
|
|
|||
|
In order to avoid having implementors type in the test vectors above,
|
|||
|
a C structure with the data is provided.
|
|||
|
|
|||
|
The comment field is the section titles used in this document. The
|
|||
|
in field contains UTF-8 encoded strings. The out field contains
|
|||
|
expected output, or NULL if the expected result is an error. The
|
|||
|
profile field can be ignored. The only significant setting for the
|
|||
|
flags field is STRINGPREP_NO_UNASSIGNED which signals to the Nameprep
|
|||
|
implementation that it should perform unassigned code point checking,
|
|||
|
aka the "AllowUnassigned" flag. The rc field contains expected error
|
|||
|
codes, where 0 indicates success and the other flags should be self
|
|||
|
explanatory.
|
|||
|
|
|||
|
struct stringprep
|
|||
|
{
|
|||
|
char *comment;
|
|||
|
char *in;
|
|||
|
char *out;
|
|||
|
char *profile;
|
|||
|
int flags;
|
|||
|
int rc;
|
|||
|
}
|
|||
|
strprep[] =
|
|||
|
{
|
|||
|
{
|
|||
|
"Map to nothing",
|
|||
|
"foo\xC2\xAD\xCD\x8F\xE1\xA0\x86\xE1\xA0\x8B"
|
|||
|
"bar""\xE2\x80\x8B\xE2\x81\xA0""baz\xEF\xB8\x80\xEF\xB8\x88"
|
|||
|
"\xEF\xB8\x8F\xEF\xBB\xBF", "foobarbaz"
|
|||
|
},
|
|||
|
{
|
|||
|
"Case folding ASCII U+0043 U+0041 U+0046 U+0045",
|
|||
|
"CAFE", "cafe"
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 31]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
},
|
|||
|
{
|
|||
|
"Case folding 8bit U+00DF (german sharp s)",
|
|||
|
"\xC3\xDF", "ss"
|
|||
|
},
|
|||
|
{
|
|||
|
"Case folding U+0130 (turkish capital I with dot)",
|
|||
|
"\xC4\xB0", "i\xcc\x87"
|
|||
|
},
|
|||
|
{
|
|||
|
"Case folding multibyte U+0143 U+037A",
|
|||
|
"\xC5\x83\xCD\xBA", "\xC5\x84 \xCE\xB9"
|
|||
|
},
|
|||
|
{
|
|||
|
"Case folding U+2121 U+33C6 U+1D7BB",
|
|||
|
"\xE2\x84\xA1\xE3\x8F\x86\xF0\x9D\x9E\xBB",
|
|||
|
"telc\xE2\x88\x95""kg\xCF\x83"
|
|||
|
},
|
|||
|
{
|
|||
|
"Normalization of U+006a U+030c U+00A0 U+00AA",
|
|||
|
"\x6A\xCC\x8C\xC2\xA0\xC2\xAA", "\xC7\xB0 a"
|
|||
|
},
|
|||
|
{
|
|||
|
"Case folding U+1FB7 and normalization",
|
|||
|
"\xE1\xBE\xB7", "\xE1\xBE\xB6\xCE\xB9"
|
|||
|
},
|
|||
|
{
|
|||
|
"Self-reverting case folding U+01F0 and normalization",
|
|||
|
"\xC7\xF0", "\xC7\xB0"
|
|||
|
},
|
|||
|
{
|
|||
|
"Self-reverting case folding U+0390 and normalization",
|
|||
|
"\xCE\x90", "\xCE\x90"
|
|||
|
},
|
|||
|
{
|
|||
|
"Self-reverting case folding U+03B0 and normalization",
|
|||
|
"\xCE\xB0", "\xCE\xB0"
|
|||
|
},
|
|||
|
{
|
|||
|
"Self-reverting case folding U+1E96 and normalization",
|
|||
|
"\xE1\xBA\x96", "\xE1\xBA\x96"
|
|||
|
},
|
|||
|
{
|
|||
|
"Self-reverting case folding U+1F56 and normalization",
|
|||
|
"\xE1\xBD\x96", "\xE1\xBD\x96"
|
|||
|
},
|
|||
|
{
|
|||
|
"ASCII space character U+0020",
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 32]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
"\x20", "\x20"
|
|||
|
},
|
|||
|
{
|
|||
|
"Non-ASCII 8bit space character U+00A0",
|
|||
|
"\xC2\xA0", "\x20"
|
|||
|
},
|
|||
|
{
|
|||
|
"Non-ASCII multibyte space character U+1680",
|
|||
|
"\xE1\x9A\x80", NULL, "Nameprep", 0,
|
|||
|
STRINGPREP_CONTAINS_PROHIBITED
|
|||
|
},
|
|||
|
{
|
|||
|
"Non-ASCII multibyte space character U+2000",
|
|||
|
"\xE2\x80\x80", "\x20"
|
|||
|
},
|
|||
|
{
|
|||
|
"Zero Width Space U+200b",
|
|||
|
"\xE2\x80\x8b", ""
|
|||
|
},
|
|||
|
{
|
|||
|
"Non-ASCII multibyte space character U+3000",
|
|||
|
"\xE3\x80\x80", "\x20"
|
|||
|
},
|
|||
|
{
|
|||
|
"ASCII control characters U+0010 U+007F",
|
|||
|
"\x10\x7F", "\x10\x7F"
|
|||
|
},
|
|||
|
{
|
|||
|
"Non-ASCII 8bit control character U+0085",
|
|||
|
"\xC2\x85", NULL, "Nameprep", 0,
|
|||
|
STRINGPREP_CONTAINS_PROHIBITED
|
|||
|
},
|
|||
|
{
|
|||
|
"Non-ASCII multibyte control character U+180E",
|
|||
|
"\xE1\xA0\x8E", NULL, "Nameprep", 0,
|
|||
|
STRINGPREP_CONTAINS_PROHIBITED
|
|||
|
},
|
|||
|
{
|
|||
|
"Zero Width No-Break Space U+FEFF",
|
|||
|
"\xEF\xBB\xBF", ""
|
|||
|
},
|
|||
|
{
|
|||
|
"Non-ASCII control character U+1D175",
|
|||
|
"\xF0\x9D\x85\xB5", NULL, "Nameprep", 0,
|
|||
|
STRINGPREP_CONTAINS_PROHIBITED
|
|||
|
},
|
|||
|
{
|
|||
|
"Plane 0 private use character U+F123",
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 33]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
"\xEF\x84\xA3", NULL, "Nameprep", 0,
|
|||
|
STRINGPREP_CONTAINS_PROHIBITED
|
|||
|
},
|
|||
|
{
|
|||
|
"Plane 15 private use character U+F1234",
|
|||
|
"\xF3\xB1\x88\xB4", NULL, "Nameprep", 0,
|
|||
|
STRINGPREP_CONTAINS_PROHIBITED
|
|||
|
},
|
|||
|
{
|
|||
|
"Plane 16 private use character U+10F234",
|
|||
|
"\xF4\x8F\x88\xB4", NULL, "Nameprep", 0,
|
|||
|
STRINGPREP_CONTAINS_PROHIBITED
|
|||
|
},
|
|||
|
{
|
|||
|
"Non-character code point U+8FFFE",
|
|||
|
"\xF2\x8F\xBF\xBE", NULL, "Nameprep", 0,
|
|||
|
STRINGPREP_CONTAINS_PROHIBITED
|
|||
|
},
|
|||
|
{
|
|||
|
"Non-character code point U+10FFFF",
|
|||
|
"\xF4\x8F\xBF\xBF", NULL, "Nameprep", 0,
|
|||
|
STRINGPREP_CONTAINS_PROHIBITED
|
|||
|
},
|
|||
|
{
|
|||
|
"Surrogate code U+DF42",
|
|||
|
"\xED\xBD\x82", NULL, "Nameprep", 0,
|
|||
|
STRINGPREP_CONTAINS_PROHIBITED
|
|||
|
},
|
|||
|
{
|
|||
|
"Non-plain text character U+FFFD",
|
|||
|
"\xEF\xBF\xBD", NULL, "Nameprep", 0,
|
|||
|
STRINGPREP_CONTAINS_PROHIBITED
|
|||
|
},
|
|||
|
{
|
|||
|
"Ideographic description character U+2FF5",
|
|||
|
"\xE2\xBF\xB5", NULL, "Nameprep", 0,
|
|||
|
STRINGPREP_CONTAINS_PROHIBITED
|
|||
|
},
|
|||
|
{
|
|||
|
"Display property character U+0341",
|
|||
|
"\xCD\x81", "\xCC\x81"
|
|||
|
},
|
|||
|
{
|
|||
|
"Left-to-right mark U+200E",
|
|||
|
"\xE2\x80\x8E", "\xCC\x81", "Nameprep", 0,
|
|||
|
STRINGPREP_CONTAINS_PROHIBITED
|
|||
|
},
|
|||
|
{
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 34]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
"Deprecated U+202A",
|
|||
|
"\xE2\x80\xAA", "\xCC\x81", "Nameprep", 0,
|
|||
|
STRINGPREP_CONTAINS_PROHIBITED
|
|||
|
},
|
|||
|
{
|
|||
|
"Language tagging character U+E0001",
|
|||
|
"\xF3\xA0\x80\x81", "\xCC\x81", "Nameprep", 0,
|
|||
|
STRINGPREP_CONTAINS_PROHIBITED
|
|||
|
},
|
|||
|
{
|
|||
|
"Language tagging character U+E0042",
|
|||
|
"\xF3\xA0\x81\x82", NULL, "Nameprep", 0,
|
|||
|
STRINGPREP_CONTAINS_PROHIBITED
|
|||
|
},
|
|||
|
{
|
|||
|
"Bidi: RandALCat character U+05BE and LCat characters",
|
|||
|
"foo\xD6\xBE""bar", NULL, "Nameprep", 0,
|
|||
|
STRINGPREP_BIDI_BOTH_L_AND_RAL
|
|||
|
},
|
|||
|
{
|
|||
|
"Bidi: RandALCat character U+FD50 and LCat characters",
|
|||
|
"foo\xEF\xB5\x90""bar", NULL, "Nameprep", 0,
|
|||
|
STRINGPREP_BIDI_BOTH_L_AND_RAL
|
|||
|
},
|
|||
|
{
|
|||
|
"Bidi: RandALCat character U+FB38 and LCat characters",
|
|||
|
"foo\xEF\xB9\xB6""bar", "foo \xd9\x8e""bar"
|
|||
|
},
|
|||
|
{ "Bidi: RandALCat without trailing RandALCat U+0627 U+0031",
|
|||
|
"\xD8\xA7\x31", NULL, "Nameprep", 0,
|
|||
|
STRINGPREP_BIDI_LEADTRAIL_NOT_RAL}
|
|||
|
,
|
|||
|
{
|
|||
|
"Bidi: RandALCat character U+0627 U+0031 U+0628",
|
|||
|
"\xD8\xA7\x31\xD8\xA8", "\xD8\xA7\x31\xD8\xA8"
|
|||
|
},
|
|||
|
{
|
|||
|
"Unassigned code point U+E0002",
|
|||
|
"\xF3\xA0\x80\x82", NULL, "Nameprep", STRINGPREP_NO_UNASSIGNED,
|
|||
|
STRINGPREP_CONTAINS_UNASSIGNED
|
|||
|
},
|
|||
|
{
|
|||
|
"Larger test (shrinking)",
|
|||
|
"X\xC2\xAD\xC3\xDF\xC4\xB0\xE2\x84\xA1\x6a\xcc\x8c\xc2\xa0\xc2"
|
|||
|
"\xaa\xce\xb0\xe2\x80\x80", "xssi\xcc\x87""tel\xc7\xb0 a\xce\xb0 ",
|
|||
|
"Nameprep"
|
|||
|
},
|
|||
|
{
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 35]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
"Larger test (expanding)",
|
|||
|
"X\xC3\xDF\xe3\x8c\x96\xC4\xB0\xE2\x84\xA1\xE2\x92\x9F\xE3\x8c\x80",
|
|||
|
"xss\xe3\x82\xad\xe3\x83\xad\xe3\x83\xa1\xe3\x83\xbc\xe3\x83\x88"
|
|||
|
"\xe3\x83\xab""i\xcc\x87""tel\x28""d\x29\xe3\x82\xa2\xe3\x83\x91"
|
|||
|
"\xe3\x83\xbc\xe3\x83\x88"
|
|||
|
},
|
|||
|
};
|
|||
|
|
|||
|
|
|||
|
Appendix B. IDNA test vectors in C syntax
|
|||
|
|
|||
|
In order to avoid having implementors type in the IDNA test vectors
|
|||
|
above, a C structure with the data is provided.
|
|||
|
|
|||
|
The name field is the section titles used in this document. The
|
|||
|
inlen and in field contains Unicode code points. The out field
|
|||
|
contains expected ToASCII output. The allowunassigned, and
|
|||
|
usestd3asciirules can be ignored. The toasciirc and tounicoderc
|
|||
|
field contains expected error codes, where 0 indicates success and
|
|||
|
the other flags should be self explanatory.
|
|||
|
|
|||
|
struct idna
|
|||
|
{
|
|||
|
char *name;
|
|||
|
size_t inlen;
|
|||
|
unsigned long in[100];
|
|||
|
char *out;
|
|||
|
int allowunassigned;
|
|||
|
int usestd3asciirules;
|
|||
|
int toasciirc;
|
|||
|
int tounicoderc;
|
|||
|
} idna[] =
|
|||
|
{
|
|||
|
{
|
|||
|
"Arabic (Egyptian)", 17,
|
|||
|
{
|
|||
|
0x0644, 0x064A, 0x0647, 0x0645, 0x0627, 0x0628, 0x062A, 0x0643,
|
|||
|
0x0644, 0x0645, 0x0648, 0x0634, 0x0639, 0x0631, 0x0628, 0x064A,
|
|||
|
0x061F},
|
|||
|
IDNA_ACE_PREFIX "egbpdaj6bu4bxfgehfvwxn", 0, 0, IDNA_SUCCESS,
|
|||
|
IDNA_SUCCESS},
|
|||
|
{
|
|||
|
"Chinese (simplified)", 9,
|
|||
|
{
|
|||
|
0x4ED6, 0x4EEC, 0x4E3A, 0x4EC0, 0x4E48, 0x4E0D, 0x8BF4, 0x4E2D, 0x6587},
|
|||
|
IDNA_ACE_PREFIX "ihqwcrb4cv8a8dqg056pqjye", 0, 0, IDNA_SUCCESS,
|
|||
|
IDNA_SUCCESS},
|
|||
|
{
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 36]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
"Chinese (traditional)", 9,
|
|||
|
{
|
|||
|
0x4ED6, 0x5011, 0x7232, 0x4EC0, 0x9EBD, 0x4E0D, 0x8AAA, 0x4E2D, 0x6587},
|
|||
|
IDNA_ACE_PREFIX "ihqwctvzc91f659drss3x8bo0yb", 0, 0, IDNA_SUCCESS,
|
|||
|
IDNA_SUCCESS},
|
|||
|
{
|
|||
|
"Czech", 22,
|
|||
|
{
|
|||
|
0x0050, 0x0072, 0x006F, 0x010D, 0x0070, 0x0072, 0x006F, 0x0073,
|
|||
|
0x0074, 0x011B, 0x006E, 0x0065, 0x006D, 0x006C, 0x0075, 0x0076,
|
|||
|
0x00ED, 0x010D, 0x0065, 0x0073, 0x006B, 0x0079},
|
|||
|
IDNA_ACE_PREFIX "Proprostnemluvesky-uyb24dma41a", 0, 0, IDNA_SUCCESS,
|
|||
|
IDNA_SUCCESS},
|
|||
|
{
|
|||
|
"Hebrew", 22,
|
|||
|
{
|
|||
|
0x05DC, 0x05DE, 0x05D4, 0x05D4, 0x05DD, 0x05E4, 0x05E9, 0x05D5,
|
|||
|
0x05D8, 0x05DC, 0x05D0, 0x05DE, 0x05D3, 0x05D1, 0x05E8, 0x05D9,
|
|||
|
0x05DD, 0x05E2, 0x05D1, 0x05E8, 0x05D9, 0x05EA},
|
|||
|
IDNA_ACE_PREFIX "4dbcagdahymbxekheh6e0a7fei0b", 0, 0, IDNA_SUCCESS,
|
|||
|
IDNA_SUCCESS},
|
|||
|
{
|
|||
|
"Hindi (Devanagari)", 30,
|
|||
|
{
|
|||
|
0x092F, 0x0939, 0x0932, 0x094B, 0x0917, 0x0939, 0x093F, 0x0928,
|
|||
|
0x094D, 0x0926, 0x0940, 0x0915, 0x094D, 0x092F, 0x094B, 0x0902,
|
|||
|
0x0928, 0x0939, 0x0940, 0x0902, 0x092C, 0x094B, 0x0932, 0x0938,
|
|||
|
0x0915, 0x0924, 0x0947, 0x0939, 0x0948, 0x0902},
|
|||
|
IDNA_ACE_PREFIX "i1baa7eci9glrd9b2ae1bj0hfcgg6iyaf8o0a1dig0cd", 0, 0,
|
|||
|
IDNA_SUCCESS},
|
|||
|
{
|
|||
|
"Japanese (kanji and hiragana)", 18,
|
|||
|
{
|
|||
|
0x306A, 0x305C, 0x307F, 0x3093, 0x306A, 0x65E5, 0x672C, 0x8A9E,
|
|||
|
0x3092, 0x8A71, 0x3057, 0x3066, 0x304F, 0x308C, 0x306A, 0x3044,
|
|||
|
0x306E, 0x304B},
|
|||
|
IDNA_ACE_PREFIX "n8jok5ay5dzabd5bym9f0cm5685rrjetr6pdxa", 0, 0,
|
|||
|
IDNA_SUCCESS},
|
|||
|
{
|
|||
|
"Russian (Cyrillic)", 28,
|
|||
|
{
|
|||
|
0x043F, 0x043E, 0x0447, 0x0435, 0x043C, 0x0443, 0x0436, 0x0435,
|
|||
|
0x043E, 0x043D, 0x0438, 0x043D, 0x0435, 0x0433, 0x043E, 0x0432,
|
|||
|
0x043E, 0x0440, 0x044F, 0x0442, 0x043F, 0x043E, 0x0440, 0x0443,
|
|||
|
0x0441, 0x0441, 0x043A, 0x0438},
|
|||
|
IDNA_ACE_PREFIX "b1abfaaepdrnnbgefbadotcwatmq2g4l", 0, 0,
|
|||
|
IDNA_SUCCESS, IDNA_SUCCESS},
|
|||
|
{
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 37]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
"Spanish", 40,
|
|||
|
{
|
|||
|
0x0050, 0x006F, 0x0072, 0x0071, 0x0075, 0x00E9, 0x006E, 0x006F,
|
|||
|
0x0070, 0x0075, 0x0065, 0x0064, 0x0065, 0x006E, 0x0073, 0x0069,
|
|||
|
0x006D, 0x0070, 0x006C, 0x0065, 0x006D, 0x0065, 0x006E, 0x0074,
|
|||
|
0x0065, 0x0068, 0x0061, 0x0062, 0x006C, 0x0061, 0x0072, 0x0065,
|
|||
|
0x006E, 0x0045, 0x0073, 0x0070, 0x0061, 0x00F1, 0x006F, 0x006C},
|
|||
|
IDNA_ACE_PREFIX "PorqunopuedensimplementehablarenEspaol-fmd56a", 0, 0,
|
|||
|
IDNA_SUCCESS},
|
|||
|
{
|
|||
|
"Vietnamese", 31,
|
|||
|
{
|
|||
|
0x0054, 0x1EA1, 0x0069, 0x0073, 0x0061, 0x006F, 0x0068, 0x1ECD,
|
|||
|
0x006B, 0x0068, 0x00F4, 0x006E, 0x0067, 0x0074, 0x0068, 0x1EC3,
|
|||
|
0x0063, 0x0068, 0x1EC9, 0x006E, 0x00F3, 0x0069, 0x0074, 0x0069,
|
|||
|
0x1EBF, 0x006E, 0x0067, 0x0056, 0x0069, 0x1EC7, 0x0074},
|
|||
|
IDNA_ACE_PREFIX "TisaohkhngthchnitingVit-kjcr8268qyxafd2f1b9g", 0, 0,
|
|||
|
IDNA_SUCCESS},
|
|||
|
{
|
|||
|
"Japanese", 8,
|
|||
|
{
|
|||
|
0x0033, 0x5E74, 0x0042, 0x7D44, 0x91D1, 0x516B, 0x5148, 0x751F},
|
|||
|
IDNA_ACE_PREFIX "3B-ww4c5e180e575a65lsy2b", 0, 0, IDNA_SUCCESS,
|
|||
|
IDNA_SUCCESS},
|
|||
|
{
|
|||
|
"Japanese", 24,
|
|||
|
{
|
|||
|
0x5B89, 0x5BA4, 0x5948, 0x7F8E, 0x6075, 0x002D, 0x0077, 0x0069,
|
|||
|
0x0074, 0x0068, 0x002D, 0x0053, 0x0055, 0x0050, 0x0045, 0x0052,
|
|||
|
0x002D, 0x004D, 0x004F, 0x004E, 0x004B, 0x0045, 0x0059, 0x0053},
|
|||
|
IDNA_ACE_PREFIX "-with-SUPER-MONKEYS-pc58ag80a8qai00g7n9n", 0, 0,
|
|||
|
IDNA_SUCCESS},
|
|||
|
{
|
|||
|
"Japanese", 25,
|
|||
|
{
|
|||
|
0x0048, 0x0065, 0x006C, 0x006C, 0x006F, 0x002D, 0x0041, 0x006E,
|
|||
|
0x006F, 0x0074, 0x0068, 0x0065, 0x0072, 0x002D, 0x0057, 0x0061,
|
|||
|
0x0079, 0x002D, 0x305D, 0x308C, 0x305E, 0x308C, 0x306E, 0x5834,
|
|||
|
0x6240},
|
|||
|
IDNA_ACE_PREFIX "Hello-Another-Way--fc4qua05auwb3674vfr0b", 0, 0,
|
|||
|
IDNA_SUCCESS},
|
|||
|
{
|
|||
|
"Japanese", 8,
|
|||
|
{
|
|||
|
0x3072, 0x3068, 0x3064, 0x5C4B, 0x6839, 0x306E, 0x4E0B, 0x0032},
|
|||
|
IDNA_ACE_PREFIX "2-u9tlzr9756bt3uc0v", 0, 0, IDNA_SUCCESS,
|
|||
|
IDNA_SUCCESS},
|
|||
|
{
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 38]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
"Japanese", 13,
|
|||
|
{
|
|||
|
0x004D, 0x0061, 0x006A, 0x0069, 0x3067, 0x004B, 0x006F, 0x0069,
|
|||
|
0x3059, 0x308B, 0x0035, 0x79D2, 0x524D},
|
|||
|
IDNA_ACE_PREFIX "MajiKoi5-783gue6qz075azm5e", 0, 0, IDNA_SUCCESS,
|
|||
|
IDNA_SUCCESS},
|
|||
|
{
|
|||
|
"Japanese", 9,
|
|||
|
{
|
|||
|
0x30D1, 0x30D5, 0x30A3, 0x30FC, 0x0064, 0x0065, 0x30EB, 0x30F3, 0x30D0},
|
|||
|
IDNA_ACE_PREFIX "de-jg4avhby1noc0d", 0, 0, IDNA_SUCCESS, IDNA_SUCCESS},
|
|||
|
{
|
|||
|
"Japanese", 7,
|
|||
|
{
|
|||
|
0x305D, 0x306E, 0x30B9, 0x30D4, 0x30FC, 0x30C9, 0x3067},
|
|||
|
IDNA_ACE_PREFIX "d9juau41awczczp", 0, 0, IDNA_SUCCESS, IDNA_SUCCESS},
|
|||
|
{
|
|||
|
"Greek", 8,
|
|||
|
{0x03b5, 0x03bb, 0x03bb, 0x03b7, 0x03bd, 0x03b9, 0x03ba, 0x03ac},
|
|||
|
IDNA_ACE_PREFIX "hxargifdar", 0, 0, IDNA_SUCCESS, IDNA_SUCCESS},
|
|||
|
{
|
|||
|
"Maltese (Malti)", 10,
|
|||
|
{0x0062, 0x006f, 0x006e, 0x0121, 0x0075, 0x0073, 0x0061, 0x0127,
|
|||
|
0x0127, 0x0061},
|
|||
|
IDNA_ACE_PREFIX "bonusaa-5bb1da", 0, 0, IDNA_SUCCESS, IDNA_SUCCESS},
|
|||
|
{
|
|||
|
"Russian (Cyrillic)", 28,
|
|||
|
{0x043f, 0x043e, 0x0447, 0x0435, 0x043c, 0x0443, 0x0436, 0x0435,
|
|||
|
0x043e, 0x043d, 0x0438, 0x043d, 0x0435, 0x0433, 0x043e, 0x0432,
|
|||
|
0x043e, 0x0440, 0x044f, 0x0442, 0x043f, 0x043e, 0x0440, 0x0443,
|
|||
|
0x0441, 0x0441, 0x043a, 0x0438},
|
|||
|
IDNA_ACE_PREFIX "b1abfaaepdrnnbgefbadotcwatmq2g4l", 0, 0,
|
|||
|
IDNA_SUCCESS, IDNA_SUCCESS},
|
|||
|
};
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 39]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
Intellectual Property Statement
|
|||
|
|
|||
|
The IETF takes no position regarding the validity or scope of any
|
|||
|
intellectual property or other rights that might be claimed to
|
|||
|
pertain to the implementation or use of the technology described in
|
|||
|
this document or the extent to which any license under such rights
|
|||
|
might or might not be available; neither does it represent that it
|
|||
|
has made any effort to identify any such rights. Information on the
|
|||
|
IETF's procedures with respect to rights in standards-track and
|
|||
|
standards-related documentation can be found in BCP-11. Copies of
|
|||
|
claims of rights made available for publication and any assurances of
|
|||
|
licenses to be made available, or the result of an attempt made to
|
|||
|
obtain a general license or permission for the use of such
|
|||
|
proprietary rights by implementors or users of this specification can
|
|||
|
be obtained from the IETF Secretariat.
|
|||
|
|
|||
|
The IETF invites any interested party to bring to its attention any
|
|||
|
copyrights, patents or patent applications, or other proprietary
|
|||
|
rights which may cover technology that may be required to practice
|
|||
|
this standard. Please address the information to the IETF Executive
|
|||
|
Director.
|
|||
|
|
|||
|
|
|||
|
Full Copyright Statement
|
|||
|
|
|||
|
Copyright (C) Simon Josefsson (2003). All Rights Reserved.
|
|||
|
|
|||
|
Copyright (C) The Internet Society (2003). All Rights Reserved.
|
|||
|
|
|||
|
This document and translations of it may be copied and furnished to
|
|||
|
others, and derivative works that comment on or otherwise explain it
|
|||
|
or assist in its implementation may be prepared, copied, published
|
|||
|
and distributed, in whole or in part, without restriction of any
|
|||
|
kind, provided that the above copyright notice and this paragraph are
|
|||
|
included on all such copies and derivative works. However, this
|
|||
|
document itself may not be modified in any way, such as by removing
|
|||
|
the copyright notice or references to the Internet Society or other
|
|||
|
Internet organizations, except as needed for the purpose of
|
|||
|
developing Internet standards in which case the procedures for
|
|||
|
copyrights defined in the Internet Standards process must be
|
|||
|
followed, or as required to translate it into languages other than
|
|||
|
English.
|
|||
|
|
|||
|
The limited permissions granted above are perpetual and will not be
|
|||
|
revoked by the Internet Society or its successors or assignees.
|
|||
|
|
|||
|
This document and the information contained herein is provided on an
|
|||
|
"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 40]
|
|||
|
|
|||
|
Internet-Draft Nameprep and IDNA Test Vectors February 2003
|
|||
|
|
|||
|
|
|||
|
TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
|
|||
|
BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
|
|||
|
HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
|
|||
|
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
|
|||
|
|
|||
|
|
|||
|
Acknowledgement
|
|||
|
|
|||
|
Funding for the RFC Editor function is currently provided by the
|
|||
|
Internet Society.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Josefsson Expires August 2, 2003 [Page 41]
|
|||
|
|