# struct stringprep # { # char *comment; # char *in; # char *out; # char *profile; # int flags; # int rc; # } { "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)", # There is a bug here: RicMoo # VV # "\xC3\xDF", "ss" "\xC3\x9f", "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", # There is a bug here: RicMoo # VV # "\xC7\xF0", "\xC7\xB0" "\xC7\xb0", "\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)", # There is a bug here: RicMoo # VV # "X\xC2\xAD\xC3\xDF\xC4\xB0\xE2\x84\xA1\x6a\xcc\x8c\xc2\xa0\xc2" "X\xC2\xAD\xC3\x9F\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)", # There is a bug here: RicMoo # VV # "X\xC3\xDF\xe3\x8c\x96\xC4\xB0\xE2\x84\xA1\xE2\x92\x9F\xE3\x8c\x80", "X\xc3\x9F\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" },