wine/dlls/winsock tests/sock.c socket.c
Alexandre Julliard
julliard at wine.codeweavers.com
Sat Nov 5 04:43:27 CST 2005
ChangeSet ID: 21121
CVSROOT: /opt/cvs-commit
Module name: wine
Changes by: julliard at winehq.org 2005/11/05 04:43:27
Modified files:
dlls/winsock/tests: sock.c
dlls/winsock : socket.c
Log message:
Saulius Krasuckas <saulius.krasuckas at ieee.org>
- Stricten cases for NT in a two tests.
- WSAAddressToString[AW] don't fail on Win9x for those.
- Modify it to pass new tests.
Patch: http://cvs.winehq.org/patch.py?id=21121
Old revision New revision Changes Path
1.26 1.27 +10 -4 wine/dlls/winsock/tests/sock.c
1.192 1.193 +2 -1 wine/dlls/winsock/socket.c
Index: wine/dlls/winsock/tests/sock.c
diff -u -p wine/dlls/winsock/tests/sock.c:1.26 wine/dlls/winsock/tests/sock.c:1.27
--- wine/dlls/winsock/tests/sock.c:1.26 5 Nov 2005 10:43:27 -0000
+++ wine/dlls/winsock/tests/sock.c 5 Nov 2005 10:43:27 -0000
@@ -1044,6 +1044,7 @@ static void test_WSAAddressToStringA(voi
{
INT ret;
DWORD len;
+ int GLE;
SOCKADDR_IN sockaddr;
CHAR address[22]; /* 12 digits + 3 dots + ':' + 5 digits + '\0' */
@@ -1059,8 +1060,10 @@ static void test_WSAAddressToStringA(voi
sockaddr.sin_addr.s_addr = 0;
ret = WSAAddressToStringA( (SOCKADDR*)&sockaddr, sizeof(sockaddr), NULL, address, &len );
- ok( ret == SOCKET_ERROR, "WSAAddressToStringA() succeeded! WSAGetLastError()=%x, ret=%d\n",
- WSAGetLastError(), ret );
+ GLE = WSAGetLastError();
+ ok( (ret == SOCKET_ERROR && GLE == WSAEFAULT) || (ret == 0),
+ "WSAAddressToStringA() failed unexpectedly: WSAGetLastError()=%d, ret=%d\n",
+ GLE, ret );
len = sizeof(address);
@@ -1111,6 +1114,7 @@ static void test_WSAAddressToStringW(voi
{
INT ret;
DWORD len;
+ int GLE;
SOCKADDR_IN sockaddr;
WCHAR address[22]; /* 12 digits + 3 dots + ':' + 5 digits + '\0' */
@@ -1127,8 +1131,10 @@ static void test_WSAAddressToStringW(voi
sockaddr.sin_addr.s_addr = 0;
ret = WSAAddressToStringW( (SOCKADDR*)&sockaddr, sizeof(sockaddr), NULL, address, &len );
- ok( ret == SOCKET_ERROR, "WSAAddressToStringW() succeeded! WSAGetLastError()=%x, ret=%d\n",
- WSAGetLastError(), ret );
+ GLE = WSAGetLastError();
+ ok( (ret == SOCKET_ERROR && GLE == WSAEFAULT) || (ret == 0),
+ "WSAAddressToStringW() failed unexpectedly: WSAGetLastError()=%d, ret=%d\n",
+ GLE, ret );
len = sizeof(address);
Index: wine/dlls/winsock/socket.c
diff -u -p wine/dlls/winsock/socket.c:1.192 wine/dlls/winsock/socket.c:1.193
--- wine/dlls/winsock/socket.c:1.192 5 Nov 2005 10:43:27 -0000
+++ wine/dlls/winsock/socket.c 5 Nov 2005 10:43:27 -0000
@@ -3966,7 +3966,7 @@ INT WINAPI WSAAddressToStringA( LPSOCKAD
CHAR buffer[22]; /* 12 digits + 3 dots + ':' + 5 digits + '\0' */
CHAR *p;
- TRACE( "(%p, %lx, %p, %p, %p)\n", sockaddr, len, info, string, lenstr );
+ TRACE( "(%p, %ld, %p, %p, %p)\n", sockaddr, len, info, string, lenstr );
if (!sockaddr || len < sizeof(SOCKADDR_IN)) return SOCKET_ERROR;
if (!string || !lenstr) return SOCKET_ERROR;
@@ -3989,6 +3989,7 @@ INT WINAPI WSAAddressToStringA( LPSOCKAD
if (*lenstr < size)
{
*lenstr = size;
+ WSASetLastError(WSAEFAULT);
return SOCKET_ERROR;
}
More information about the wine-cvs
mailing list