Module: wine Branch: master Commit: 8312539efe18533f6e2b35882d12e9d1bcbefa0d URL: https://source.winehq.org/git/wine.git/?a=commit;h=8312539efe18533f6e2b35882...
Author: Zebediah Figura z.figura12@gmail.com Date: Fri Jun 25 20:21:08 2021 -0500
ws2_32: Use IOCTL_AFD_WINE_GET_SO_RCVBUF.
Signed-off-by: Zebediah Figura z.figura12@gmail.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/ws2_32/socket.c | 5 ++++- dlls/ws2_32/tests/sock.c | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/dlls/ws2_32/socket.c b/dlls/ws2_32/socket.c index 4982b08934b..7ed48124a5a 100644 --- a/dlls/ws2_32/socket.c +++ b/dlls/ws2_32/socket.c @@ -2090,7 +2090,6 @@ INT WINAPI WS_getsockopt(SOCKET s, INT level,
/* Handle common cases. The special cases are below, sorted * alphabetically */ - case WS_SO_RCVBUF: case WS_SO_REUSEADDR: case WS_SO_SNDBUF: if ( (fd = get_sock_fd( s, 0, NULL )) == -1) @@ -2285,6 +2284,10 @@ INT WINAPI WS_getsockopt(SOCKET s, INT level, } return ret ? 0 : SOCKET_ERROR; } + + case WS_SO_RCVBUF: + return server_getsockopt( s, IOCTL_AFD_WINE_GET_SO_RCVBUF, optval, optlen ); + case WS_SO_RCVTIMEO: case WS_SO_SNDTIMEO: { diff --git a/dlls/ws2_32/tests/sock.c b/dlls/ws2_32/tests/sock.c index 9f461376853..ccaa04e4ef5 100644 --- a/dlls/ws2_32/tests/sock.c +++ b/dlls/ws2_32/tests/sock.c @@ -1224,7 +1224,7 @@ static void test_set_getsockopt(void) value = 0xdeadbeef; err = getsockopt(s, SOL_SOCKET, SO_RCVBUF, (char *)&value, &size); ok( !err, "getsockopt(SO_RCVBUF) failed error: %u\n", WSAGetLastError() ); - todo_wine ok( value == 4096, "expected 4096, got %u\n", value ); + ok( value == 4096, "expected 4096, got %u\n", value );
/* SO_LINGER */ for( i = 0; i < ARRAY_SIZE(linger_testvals);i++) {