⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 api.tsy

📁 bind 9.3结合mysql数据库
💻 TSY
📖 第 1 页 / 共 2 页
字号:
#ifdef WITHOUT_ICONV	SKIP_TESTCASE;#else	setenv("IDN_DISABLE", "1", 1);	r = idn_decodename2(IDN_DECODE_APP, AUX_EUCJP_NAME, to, sizeof(to),			    EUCJP_ENCODING_NAME);	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, AUX_EUCJP_NAME);#endif}//# TESTCASE//	title: set IDN_DISABLE, and then call enable(1) and encodename()//	group: generic-conversion{	setenv("IDN_DISABLE", "1", 1);	idn_enable(1);	r = idn_encodename(IDN_ENCODE_APP, UTF8_NAME, to, sizeof(to));	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, PUNYCODE_NAME);}//# TESTCASE//	title: set IDN_DISABLE, and then call enable(1) and decodename()//	group: generic-conversion{	setenv("IDN_DISABLE", "1", 1);	idn_enable(1);	r = idn_decodename(IDN_DECODE_APP, PUNYCODE_NAME, to, sizeof(to));	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, UTF8_REVNAME);}//# TESTCASE//	title: set IDN_DISABLE, and then call enable(1) and decodename2()//	group: generic-conversion{#ifdef WITHOUT_ICONV	SKIP_TESTCASE;#else	setenv("IDN_DISABLE", "1", 1);	idn_enable(1);	r = idn_decodename2(IDN_DECODE_APP, AUX_EUCJP_NAME, to, sizeof(to),			    EUCJP_ENCODING_NAME);	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, UTF8_REVNAME);#endif}//# TESTCASE//	title: overrun test for arg `to' of encodename()//	group: generic-conversion{	/* Normal case */	r = idn_encodename(IDN_ENCODE_APP, UTF8_NAME, to,			   strlen(PUNYCODE_NAME) + 1);	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, PUNYCODE_NAME);	r = idn_encodename(IDN_ENCODE_APP, UTF8_NAME, to,			   strlen(PUNYCODE_NAME));	ASSERT_RESULT(r, idn_buffer_overflow);	/* enable(0) case */	idn_enable(0);	r = idn_encodename(IDN_ENCODE_APP, UTF8_NAME, to,			   strlen(UTF8_NAME) + 1);	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, UTF8_NAME);	r = idn_encodename(IDN_ENCODE_APP, UTF8_NAME, to,			   strlen(UTF8_NAME));	ASSERT_RESULT(r, idn_buffer_overflow);	/* actions=0 case */	idn_enable(1);	r = idn_encodename(0, UTF8_NAME, to, strlen(UTF8_NAME) + 1);	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, UTF8_NAME);	r = idn_encodename(0, UTF8_NAME, to, strlen(UTF8_NAME));	ASSERT_RESULT(r, idn_buffer_overflow);}//# TESTCASE//	title: overrun test for arg `to' of decodename()//	group: generic-conversion{	/* Normal case */	r = idn_decodename(IDN_DECODE_APP, PUNYCODE_NAME, to,			   strlen(UTF8_REVNAME) + 1);	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, UTF8_REVNAME);	r = idn_decodename(IDN_DECODE_APP, PUNYCODE_NAME, to,			   strlen(UTF8_REVNAME));	ASSERT_RESULT(r, idn_buffer_overflow);	/* idn_enable(0) case */	idn_enable(0);	r = idn_decodename(IDN_DECODE_APP, PUNYCODE_NAME, to,			   strlen(PUNYCODE_NAME) + 1);	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, PUNYCODE_NAME);	r = idn_decodename(IDN_DECODE_APP, PUNYCODE_NAME, to,			   strlen(PUNYCODE_NAME));	ASSERT_RESULT(r, idn_buffer_overflow);	/* actions=0 case */	idn_enable(1);	r = idn_decodename(0, PUNYCODE_NAME, to, strlen(PUNYCODE_NAME) + 1);	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, PUNYCODE_NAME);	r = idn_decodename(0, PUNYCODE_NAME, to, strlen(PUNYCODE_NAME));	ASSERT_RESULT(r, idn_buffer_overflow);}//# TESTCASE//	title: overrun test for arg `to' of decodename2()//	group: generic-conversion{#ifdef WITHOUT_ICONV	SKIP_TESTCASE;#else	/* Normal case */	r = idn_decodename2(IDN_DECODE_APP, AUX_EUCJP_NAME, to,			    strlen(UTF8_REVNAME) + 1, EUCJP_ENCODING_NAME);	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, UTF8_REVNAME);	r = idn_decodename2(IDN_DECODE_APP, AUX_EUCJP_NAME, to,			    strlen(UTF8_REVNAME), EUCJP_ENCODING_NAME);	ASSERT_RESULT(r, idn_buffer_overflow);	/* idn_enable(0) case */	idn_enable(0);	r = idn_decodename2(IDN_DECODE_APP, AUX_EUCJP_NAME, to,			    strlen(AUX_EUCJP_NAME) + 1, EUCJP_ENCODING_NAME);	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, AUX_EUCJP_NAME);	r = idn_decodename2(IDN_DECODE_APP, AUX_EUCJP_NAME, to,			    strlen(AUX_EUCJP_NAME), EUCJP_ENCODING_NAME);	ASSERT_RESULT(r, idn_buffer_overflow);	/* actions=0 case */	idn_enable(1);	r = idn_decodename2(0, AUX_EUCJP_NAME, to, strlen(AUX_EUCJP_NAME) + 1,			    EUCJP_ENCODING_NAME);	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, AUX_EUCJP_NAME);	r = idn_decodename2(0, AUX_EUCJP_NAME, to, strlen(AUX_EUCJP_NAME),			    EUCJP_ENCODING_NAME);	ASSERT_RESULT(r, idn_buffer_overflow);#endif}//# TESTCASE//	title: call encodename() with tolen=0//	group: generic-conversion{	r = idn_encodename(IDN_ENCODE_APP, UTF8_NAME, to, 0);	ASSERT_RESULT(r, idn_buffer_overflow);}//# TESTCASE//	title: call decodename() with tolen=0//	group: generic-conversion{	r = idn_decodename(IDN_DECODE_APP, PUNYCODE_NAME, to, 0);	ASSERT_RESULT(r, idn_buffer_overflow);}//# TESTCASE//	title: call decodename2() with tolen=0//	group: generic-conversion{#ifdef WITHOUT_ICONV	SKIP_TESTCASE;#else	r = idn_decodename2(IDN_DECODE_APP, AUX_EUCJP_NAME, to, 0,			    EUCJP_ENCODING_NAME);	ASSERT_RESULT(r, idn_buffer_overflow);#endif}//# TESTCASE//	title: convert an empty string using encodename()//	group: generic-conversion{	r = idn_encodename(IDN_ENCODE_APP, "", to, sizeof(to));	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, "");}//# TESTCASE//	title: convert an empty string using decodename()//	group: generic-conversion{	r = idn_decodename(IDN_DECODE_APP, "", to, sizeof(to));	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, "");}//# TESTCASE//	title: convert an empty string using decodename2()//	group: generic-conversion{#ifdef WITHOUT_ICONV	SKIP_TESTCASE;#else	r = idn_decodename2(IDN_DECODE_APP, "", to, sizeof(to),			    EUCJP_ENCODING_NAME);	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, "");#endif}//# TESTCASE//	title: prohcheck by encodename()//	group: generic-conversion{	/* U+1680: prohibited character */	r = idn_encodename(IDN_PROHCHECK, "<U+1680>", to, sizeof(to));	ASSERT_RESULT(r, idn_prohibited);}//# TESTCASE//	title: unascheck by encodename()//	group: generic-conversion{	/* U+0221: unassigned codepoint */	r = idn_encodename(IDN_UNASCHECK, "<U+0221>", to, sizeof(to));	ASSERT_RESULT(r, idn_prohibited);}//# TESTCASE//	title: bidicheck by encodename()//	group: generic-conversion{	/* U+05D0:   bidirectional property is "R" */	/* `a':      bidirectional property is "L" */	/* `0', `-': bidirectional property is "N" */	r = idn_encodename(IDN_BIDICHECK, "<U+05D0>", to, sizeof(to));	ASSERT_RESULT(r, idn_success);	r = idn_encodename(IDN_BIDICHECK, "<U+05D0><U+05D0>",			   to, sizeof(to));	ASSERT_RESULT(r, idn_success);	r = idn_encodename(IDN_BIDICHECK, "<U+05D0><U+05D0>-a",			   to, sizeof(to));	ASSERT_RESULT(r, idn_prohibited);	r = idn_encodename(IDN_BIDICHECK, "<U+05D0>-a-<U+05D0>",			   to, sizeof(to));	ASSERT_RESULT(r, idn_prohibited);	r = idn_encodename(IDN_BIDICHECK, "a-<U+05D0><U+05D0>",			   to, sizeof(to));	ASSERT_RESULT(r, idn_prohibited);	r = idn_encodename(IDN_BIDICHECK, "<U+05D0><U+05D0>-0",			   to, sizeof(to));	ASSERT_RESULT(r, idn_prohibited);	r = idn_encodename(IDN_BIDICHECK, "<U+05D0>-0-<U+05D0>",			   to, sizeof(to));	ASSERT_RESULT(r, idn_success);	r = idn_encodename(IDN_BIDICHECK, "0-<U+05D0><U+05D0>",			   to, sizeof(to));	ASSERT_RESULT(r, idn_prohibited);}//# TESTCASE//	title: asccheck by encodename()//	group: generic-conversion{	r = idn_encodename(IDN_ASCCHECK, "-name", to, sizeof(to));	ASSERT_RESULT(r, idn_prohibited);	r = idn_encodename(IDN_ASCCHECK, "name-", to, sizeof(to));	ASSERT_RESULT(r, idn_prohibited);	r = idn_encodename(IDN_ASCCHECK, "n ame", to, sizeof(to));	ASSERT_RESULT(r, idn_prohibited);}//# TESTCASE//	title: lencheck by encodename()//	group: generic-conversion{	r = idn_encodename(IDN_LENCHECK,			   "123456789-123456789-123456789-123456789-"			   "123456789-123456789-123", to, sizeof(to));	ASSERT_RESULT(r, idn_success);	r = idn_encodename(IDN_LENCHECK,			   "123456789-123456789-123456789-123456789-"			   "123456789-123456789-1234", to, sizeof(to));	ASSERT_RESULT(r, idn_invalid_length);	r = idn_encodename(IDN_LENCHECK, "a..b", to, sizeof(to));	ASSERT_RESULT(r, idn_invalid_length);}//# TESTCASE//	title: rtcheck non-prohchecked label by decodename()//	group: generic-conversion{	/* "xn--6ue" -> "U+1680" (prohibited character) */	r = idn_decodename(IDN_RTCHECK, "xn--6ue", to, sizeof(to));	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, "xn--6ue");}//# TESTCASE//	title: rtcheck non-unaschecked label by decodename()//	group: generic-conversion{	/* "xn--6la" -> "U+0221" (unassigned codepoint) */	r = idn_decodename(IDN_IDNCONV | IDN_RTCHECK | IDN_UNASCHECK,			   "xn--6la", to, sizeof(to));	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, "xn--6la");}//# TESTCASE//	title: rtcheck non-ascchecked label by decodename()//	group: generic-conversion{	/* "xn----x7t" -> "- U+3042" */	r = idn_decodename(IDN_IDNCONV | IDN_RTCHECK | IDN_ASCCHECK,			   "xn----x7t", to, sizeof(to));	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, "xn----x7t");	/* "xn----w7t" -> "U+3042 -" */	r = idn_decodename(IDN_IDNCONV | IDN_RTCHECK | IDN_ASCCHECK,			   "xn----w7t", to, sizeof(to));	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, "xn----w7t");}//# TESTCASE//	title: rtcheck non-lenchecked label by decodename()//	group: generic-conversion{	/* `s1' has 63 characters */	const char *s1 =	    "xn--l8jaa5522a8sj38bzugvvblo3y90fjzgvxlmxscifws3d43odzaq6aj340b";	const char *s1rev =	    "<U+9752><U+68EE><U+5CA9><U+624B><U+5BAE><U+57CE><U+79CB><U+7530>"	    "<U+5C71><U+5F62><U+798F><U+5CF6><U+6771><U+4EAC><U+795E><U+5948>"	    "<U+5DDD><U+3042><U+3042><U+3042>";	/* `s2' has 64 characters */	const char *s2 =	    "xn--a-w7ta6522a8sj38bzugvvblo3y90fjzgvxlmxscifws3d43odzaq6aj340b";	/* `s3' has an empty label */	const char *s3 = "a..b";	r = idn_decodename(IDN_IDNCONV | IDN_RTCHECK, s1, to, sizeof(to));	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, s1rev);	r = idn_decodename(IDN_IDNCONV | IDN_RTCHECK, s2, to, sizeof(to));	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, s2);	r = idn_decodename(IDN_IDNCONV | IDN_RTCHECK, s3, to, sizeof(to));	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, s3);}//# TESTCASE//	title: rtcheck non-prohchecked label by decodename2()//	group: generic-conversion{#ifdef WITHOUT_ICONV	SKIP_TESTCASE;#else	/* "xn--6ue" -> "U+1680" (prohibited character) */	r = idn_decodename2(IDN_RTCHECK, "xn--6ue", to, sizeof(to),			    EUCJP_ENCODING_NAME);	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, "xn--6ue");#endif}//# TESTCASE//	title: rtcheck non-unaschecked label by decodename2()//	group: generic-conversion{#ifdef WITHOUT_ICONV	SKIP_TESTCASE;#else	/* "xn--6la" -> "U+0221" (unassigned codepoint) */	r = idn_decodename2(IDN_IDNCONV | IDN_RTCHECK | IDN_UNASCHECK,			    "xn--6la", to, sizeof(to), EUCJP_ENCODING_NAME);	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, "xn--6la");#endif}//# TESTCASE//	title: rtcheck non-ascchecked label by decodename2()//	group: generic-conversion{#ifdef WITHOUT_ICONV	SKIP_TESTCASE;#else	/* "xn----x7t" -> "- U+3042" */	r = idn_decodename2(IDN_IDNCONV | IDN_RTCHECK | IDN_ASCCHECK,			    "xn----x7t", to, sizeof(to), EUCJP_ENCODING_NAME);	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, "xn----x7t");	/* "xn----w7t" -> "U+3042 -" */	r = idn_decodename2(IDN_IDNCONV | IDN_RTCHECK | IDN_ASCCHECK,			    "xn----w7t", to, sizeof(to), EUCJP_ENCODING_NAME);	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, "xn----w7t");#endif}//# TESTCASE//	title: rtcheck non-lenchecked label by decodename2()//	group: generic-conversion{#ifdef WITHOUT_ICONV	SKIP_TESTCASE;#else	/* `s1' has 63 characters */	const char *s1 =	    "xn--l8jaa5522a8sj38bzugvvblo3y90fjzgvxlmxscifws3d43odzaq6aj340b";	const char *s1rev =	    "<U+9752><U+68EE><U+5CA9><U+624B><U+5BAE><U+57CE><U+79CB><U+7530>"	    "<U+5C71><U+5F62><U+798F><U+5CF6><U+6771><U+4EAC><U+795E><U+5948>"	    "<U+5DDD><U+3042><U+3042><U+3042>";	/* `s2' has 64 characters */	const char *s2 =	    "xn--a-w7ta6522a8sj38bzugvvblo3y90fjzgvxlmxscifws3d43odzaq6aj340b";	/* `s3' has an empty label */	const char *s3 = "a..b";	r = idn_decodename2(IDN_IDNCONV | IDN_RTCHECK, s1, to, sizeof(to),			    EUCJP_ENCODING_NAME);	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, s1rev);	r = idn_decodename2(IDN_IDNCONV | IDN_RTCHECK, s2, to, sizeof(to),			    EUCJP_ENCODING_NAME);	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, s2);	r = idn_decodename(IDN_IDNCONV | IDN_RTCHECK, s3, to, sizeof(to));	ASSERT_RESULT(r, idn_success);	ASSERT_STRING(to, s3);#endif}//# TESTCASE//	title: pass broken string as `from' to encodename()//	group: generic-conversion quiet{	/* "\xe3\x21" is not valid UTF-8 string */	r = idn_encodename(IDN_ENCODE_APP, "\xe3\x21", to, sizeof(to));	ASSERT_RESULT(r, idn_invalid_encoding);}//# TESTCASE//	title: pass broken string as `from' to decodename()//	group: generic-conversion quiet{	/* "\xe3\x21" is not valid UTF-8 string */	r = idn_decodename(IDN_DECODE_APP, "\xe3\x21", to, sizeof(to));	ASSERT_RESULT(r, idn_invalid_encoding);}//# TESTCASE//	title: pass broken string as `from' to decodename2()//	group: generic-conversion quiet{#ifdef WITHOUT_ICONV	SKIP_TESTCASE;#else	/* "\xa4\x21" is not valid EUC-JP string */	r = idn_decodename2(IDN_DECODE_APP, "\xa4\x21", to, sizeof(to),			    EUCJP_ENCODING_NAME);	ASSERT_RESULT(r, idn_invalid_encoding);#endif}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -