wine/dlls/winsock/tests sock.c

Alexandre Julliard julliard at wine.codeweavers.com
Fri Nov 4 05:14:12 CST 2005


ChangeSet ID:	21102
CVSROOT:	/opt/cvs-commit
Module name:	wine
Changes by:	julliard at winehq.org	2005/11/04 05:14:12

Modified files:
	dlls/winsock/tests: sock.c 

Log message:
	Saulius Krasuckas <saulius.krasuckas at ieee.org>
	Make 4 WSAStringToAddress* tests don't fail on Win9x.

Patch: http://cvs.winehq.org/patch.py?id=21102

Old revision  New revision  Changes     Path
 1.25          1.26          +17 -8      wine/dlls/winsock/tests/sock.c

Index: wine/dlls/winsock/tests/sock.c
diff -u -p wine/dlls/winsock/tests/sock.c:1.25 wine/dlls/winsock/tests/sock.c:1.26
--- wine/dlls/winsock/tests/sock.c:1.25	4 Nov 2005 11:14:12 -0000
+++ wine/dlls/winsock/tests/sock.c	4 Nov 2005 11:14:12 -0000
@@ -1179,6 +1179,7 @@ static void test_WSAStringToAddressA(voi
 {
     INT ret, len;
     SOCKADDR_IN sockaddr;
+    int GLE;
 
     CHAR address1[] = "0.0.0.0";
     CHAR address2[] = "127.127.127.127";
@@ -1214,8 +1215,10 @@ static void test_WSAStringToAddressA(voi
     sockaddr.sin_addr.s_addr = 0;
 
     ret = WSAStringToAddressA( address3, AF_INET, NULL, (SOCKADDR*)&sockaddr, &len );
-    ok( !ret && sockaddr.sin_addr.s_addr == 0xffffffff,
-        "WSAStringToAddressA() failed unexpectedly: %d\n", WSAGetLastError() );
+    GLE = WSAGetLastError();
+    ok( (ret == 0 && sockaddr.sin_addr.s_addr == 0xffffffff) || 
+        (ret == SOCKET_ERROR && GLE == ERROR_INVALID_PARAMETER),
+        "WSAStringToAddressA() failed unexpectedly: %d\n", GLE );
 
     len = sizeof(sockaddr);
     sockaddr.sin_port = 0;
@@ -1230,14 +1233,17 @@ static void test_WSAStringToAddressA(voi
     sockaddr.sin_addr.s_addr = 0;
 
     ret = WSAStringToAddressA( address5, AF_INET, NULL, (SOCKADDR*)&sockaddr, &len );
-    ok( !ret && sockaddr.sin_addr.s_addr == 0xffffffff && sockaddr.sin_port == 0xffff,
-        "WSAStringToAddressA() failed unexpectedly: %d\n", WSAGetLastError() );
+    GLE = WSAGetLastError();
+    ok( (ret == 0 && sockaddr.sin_addr.s_addr == 0xffffffff && sockaddr.sin_port == 0xffff) || 
+        (ret == SOCKET_ERROR && GLE == ERROR_INVALID_PARAMETER),
+        "WSAStringToAddressA() failed unexpectedly: %d\n", GLE );
 }
 
 static void test_WSAStringToAddressW(void)
 {
     INT ret, len;
     SOCKADDR_IN sockaddr;
+    int GLE;
 
     WCHAR address1[] = { '0','.','0','.','0','.','0', 0 };
     WCHAR address2[] = { '1','2','7','.','1','2','7','.','1','2','7','.','1','2','7', 0 };
@@ -1275,8 +1281,10 @@ static void test_WSAStringToAddressW(voi
     sockaddr.sin_addr.s_addr = 0;
 
     ret = WSAStringToAddressW( address3, AF_INET, NULL, (SOCKADDR*)&sockaddr, &len );
-    ok( !ret && sockaddr.sin_addr.s_addr == 0xffffffff,
-        "WSAStringToAddressW() failed unexpectedly: %d\n", WSAGetLastError() );
+    GLE = WSAGetLastError();
+    ok( (ret == 0 && sockaddr.sin_addr.s_addr == 0xffffffff) || 
+        (ret == SOCKET_ERROR && GLE == ERROR_INVALID_PARAMETER),
+        "WSAStringToAddressW() failed unexpectedly: %d\n", GLE );
 
     len = sizeof(sockaddr);
     sockaddr.sin_port = 0;
@@ -1291,8 +1299,9 @@ static void test_WSAStringToAddressW(voi
     sockaddr.sin_addr.s_addr = 0;
 
     ret = WSAStringToAddressW( address5, AF_INET, NULL, (SOCKADDR*)&sockaddr, &len );
-    ok( !ret && sockaddr.sin_addr.s_addr == 0xffffffff && sockaddr.sin_port == 0xffff,
-        "WSAStringToAddressW() failed unexpectedly: %d\n", WSAGetLastError() );
+    ok( (ret == 0 && sockaddr.sin_addr.s_addr == 0xffffffff && sockaddr.sin_port == 0xffff) || 
+        (ret == SOCKET_ERROR && (GLE == ERROR_INVALID_PARAMETER || GLE == WSAEINVAL)),
+        "WSAStringToAddressW() failed unexpectedly: %d\n", GLE );
 }
 
 /**************** Main program  ***************/



More information about the wine-cvs mailing list