Module: wine Branch: master Commit: bf40710516d76fcdadaf14233605af63e00960e0 URL: http://source.winehq.org/git/wine.git/?a=commit;h=bf40710516d76fcdadaf142336...
Author: Jeff Latimer lats@yless4u.com.au Date: Fri Apr 17 14:29:52 2009 +1000
ws2_32: WSAAddressToStringA should return length of ANSI address string and should include the trailing null.
---
dlls/ws2_32/socket.c | 3 ++- dlls/ws2_32/tests/sock.c | 2 ++ 2 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/dlls/ws2_32/socket.c b/dlls/ws2_32/socket.c index 0031ad2..1bcff89 100644 --- a/dlls/ws2_32/socket.c +++ b/dlls/ws2_32/socket.c @@ -4805,7 +4805,7 @@ INT WINAPI WSAAddressToStringA( LPSOCKADDR sockaddr, DWORD len, p = strchr( buffer, ':' ); if (!((SOCKADDR_IN *)sockaddr)->sin_port) *p = 0;
- size = strlen( buffer ); + size = strlen( buffer ) + 1;
if (*lenstr < size) { @@ -4814,6 +4814,7 @@ INT WINAPI WSAAddressToStringA( LPSOCKADDR sockaddr, DWORD len, return SOCKET_ERROR; }
+ *lenstr = size; strcpy( string, buffer ); return 0; } diff --git a/dlls/ws2_32/tests/sock.c b/dlls/ws2_32/tests/sock.c index c46a3f1..eb76a86 100644 --- a/dlls/ws2_32/tests/sock.c +++ b/dlls/ws2_32/tests/sock.c @@ -1296,6 +1296,7 @@ static void test_WSAAddressToStringA(void) ok( !ret, "WSAAddressToStringA() failed unexpectedly: %d\n", WSAGetLastError() );
ok( !strcmp( address, expect1 ), "Expected: %s, got: %s\n", expect1, address ); + ok( len == sizeof( expect1 ), "Expected size to be %d, got %d\n", sizeof( expect1 ), len);
len = sizeof(address);
@@ -1329,6 +1330,7 @@ static void test_WSAAddressToStringA(void) ok( !ret, "WSAAddressToStringA() failed unexpectedly: %d\n", WSAGetLastError() );
ok( !strcmp( address, expect4 ), "Expected: %s, got: %s\n", expect4, address ); + ok( len == sizeof( expect4 ), "Expected size to be %d, got %d\n", sizeof( expect4 ), len); }
static void test_WSAAddressToStringW(void)