dnsapi: Mark some test results as broken and conform to the more recent behavior.

This commit is contained in:
Hans Leidekker 2011-08-24 10:22:48 +02:00 committed by Alexandre Julliard
parent 9d68804379
commit d04d2efacf
2 changed files with 8 additions and 13 deletions

View File

@ -193,8 +193,6 @@ DNS_STATUS WINAPI DnsValidateName_W( PCWSTR name, DNS_NAME_FORMAT format )
{ {
case DnsNameDomain: case DnsNameDomain:
{ {
if (!(state & HAS_NON_NUMERIC) && (state & HAS_NUMERIC))
return DNS_ERROR_NUMERIC_NAME;
if ((state & HAS_EXTENDED) || (state & HAS_UNDERSCORE)) if ((state & HAS_EXTENDED) || (state & HAS_UNDERSCORE))
return DNS_ERROR_NON_RFC_NAME; return DNS_ERROR_NON_RFC_NAME;
if ((state & HAS_SPACE) || if ((state & HAS_SPACE) ||
@ -214,8 +212,6 @@ DNS_STATUS WINAPI DnsValidateName_W( PCWSTR name, DNS_NAME_FORMAT format )
} }
case DnsNameHostnameFull: case DnsNameHostnameFull:
{ {
if (!(state & HAS_NON_NUMERIC) && (state & HAS_NUMERIC))
return DNS_ERROR_NUMERIC_NAME;
if ((state & HAS_EXTENDED) || (state & HAS_UNDERSCORE)) if ((state & HAS_EXTENDED) || (state & HAS_UNDERSCORE))
return DNS_ERROR_NON_RFC_NAME; return DNS_ERROR_NON_RFC_NAME;
if ((state & HAS_SPACE) || if ((state & HAS_SPACE) ||
@ -226,8 +222,6 @@ DNS_STATUS WINAPI DnsValidateName_W( PCWSTR name, DNS_NAME_FORMAT format )
case DnsNameHostnameLabel: case DnsNameHostnameLabel:
{ {
if (state & HAS_DOT) return ERROR_INVALID_NAME; if (state & HAS_DOT) return ERROR_INVALID_NAME;
if (!(state & HAS_NON_NUMERIC) && (state & HAS_NUMERIC))
return DNS_ERROR_NUMERIC_NAME;
if ((state & HAS_EXTENDED) || (state & HAS_UNDERSCORE)) if ((state & HAS_EXTENDED) || (state & HAS_UNDERSCORE))
return DNS_ERROR_NON_RFC_NAME; return DNS_ERROR_NON_RFC_NAME;
if ((state & HAS_SPACE) || if ((state & HAS_SPACE) ||

View File

@ -32,6 +32,7 @@ static const struct
LPCSTR name; LPCSTR name;
DNS_NAME_FORMAT format; DNS_NAME_FORMAT format;
DNS_STATUS status; DNS_STATUS status;
DNS_STATUS status_broken;
} }
test_data[] = test_data[] =
{ {
@ -47,8 +48,8 @@ test_data[] =
{ "a.*", DnsNameDomain, DNS_ERROR_INVALID_NAME_CHAR }, { "a.*", DnsNameDomain, DNS_ERROR_INVALID_NAME_CHAR },
{ "a ", DnsNameDomain, DNS_ERROR_INVALID_NAME_CHAR }, { "a ", DnsNameDomain, DNS_ERROR_INVALID_NAME_CHAR },
{ "a._b", DnsNameDomain, DNS_ERROR_NON_RFC_NAME }, { "a._b", DnsNameDomain, DNS_ERROR_NON_RFC_NAME },
{ "123", DnsNameDomain, DNS_ERROR_NUMERIC_NAME }, { "123", DnsNameDomain, ERROR_SUCCESS, DNS_ERROR_NUMERIC_NAME },
{ "123.456", DnsNameDomain, DNS_ERROR_NUMERIC_NAME }, { "123.456", DnsNameDomain, ERROR_SUCCESS, DNS_ERROR_NUMERIC_NAME },
{ "a.b", DnsNameDomain, ERROR_SUCCESS }, { "a.b", DnsNameDomain, ERROR_SUCCESS },
{ "", DnsNameDomainLabel, ERROR_INVALID_NAME }, { "", DnsNameDomainLabel, ERROR_INVALID_NAME },
@ -79,8 +80,8 @@ test_data[] =
{ "e.*", DnsNameHostnameFull, DNS_ERROR_INVALID_NAME_CHAR }, { "e.*", DnsNameHostnameFull, DNS_ERROR_INVALID_NAME_CHAR },
{ "e ", DnsNameHostnameFull, DNS_ERROR_INVALID_NAME_CHAR }, { "e ", DnsNameHostnameFull, DNS_ERROR_INVALID_NAME_CHAR },
{ "e._f", DnsNameHostnameFull, DNS_ERROR_NON_RFC_NAME }, { "e._f", DnsNameHostnameFull, DNS_ERROR_NON_RFC_NAME },
{ "789", DnsNameHostnameFull, DNS_ERROR_NUMERIC_NAME }, { "789", DnsNameHostnameFull, ERROR_SUCCESS, DNS_ERROR_NUMERIC_NAME },
{ "789.456", DnsNameHostnameFull, DNS_ERROR_NUMERIC_NAME }, { "789.456", DnsNameHostnameFull, ERROR_SUCCESS, DNS_ERROR_NUMERIC_NAME },
{ "e.f", DnsNameHostnameFull, ERROR_SUCCESS }, { "e.f", DnsNameHostnameFull, ERROR_SUCCESS },
{ "", DnsNameHostnameLabel, ERROR_INVALID_NAME }, { "", DnsNameHostnameLabel, ERROR_INVALID_NAME },
@ -93,7 +94,7 @@ test_data[] =
{ "*", DnsNameHostnameLabel, DNS_ERROR_INVALID_NAME_CHAR }, { "*", DnsNameHostnameLabel, DNS_ERROR_INVALID_NAME_CHAR },
{ "g ", DnsNameHostnameLabel, DNS_ERROR_INVALID_NAME_CHAR }, { "g ", DnsNameHostnameLabel, DNS_ERROR_INVALID_NAME_CHAR },
{ "_g", DnsNameHostnameLabel, DNS_ERROR_NON_RFC_NAME }, { "_g", DnsNameHostnameLabel, DNS_ERROR_NON_RFC_NAME },
{ "123", DnsNameHostnameLabel, DNS_ERROR_NUMERIC_NAME }, { "123", DnsNameHostnameLabel, ERROR_SUCCESS, DNS_ERROR_NUMERIC_NAME },
{ "123.456", DnsNameHostnameLabel, ERROR_INVALID_NAME }, { "123.456", DnsNameHostnameLabel, ERROR_INVALID_NAME },
{ "g.h", DnsNameHostnameLabel, ERROR_INVALID_NAME }, { "g.h", DnsNameHostnameLabel, ERROR_INVALID_NAME },
@ -146,8 +147,8 @@ static void test_DnsValidateName_A( void )
for (i = 0; i < sizeof(test_data) / sizeof(test_data[0]); i++) for (i = 0; i < sizeof(test_data) / sizeof(test_data[0]); i++)
{ {
status = DnsValidateName_A( test_data[i].name, test_data[i].format ); status = DnsValidateName_A( test_data[i].name, test_data[i].format );
ok( status == test_data[i].status, "%d: \'%s\': got %d, expected %d\n", ok( status == test_data[i].status || broken(status == test_data[i].status_broken),
i, test_data[i].name, status, test_data[i].status ); "%d: \'%s\': got %d, expected %d\n", i, test_data[i].name, status, test_data[i].status );
} }
} }