Module: wine Branch: master Commit: e7fd1ac3b265f2f86ec832268dbbc5425b78ecfc URL: https://source.winehq.org/git/wine.git/?a=commit;h=e7fd1ac3b265f2f86ec832268...
Author: Alistair Leslie-Hughes leslie_alistair@hotmail.com Date: Mon Nov 19 09:33:31 2018 +0100
ws2_32: Ignore a SO_SNDBUF value of 0 on macOS.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=40264 Signed-off-by: Alistair Leslie-Hughes leslie_alistair@hotmail.com Signed-off-by: Hans Leidekker hans@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/ws2_32/socket.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/dlls/ws2_32/socket.c b/dlls/ws2_32/socket.c index df068fe..2ac6b9f 100644 --- a/dlls/ws2_32/socket.c +++ b/dlls/ws2_32/socket.c @@ -5808,6 +5808,17 @@ int WINAPI WS_setsockopt(SOCKET s, int level, int optname, optlen = sizeof(struct linger); break;
+ case WS_SO_SNDBUF: + if (!*(const int *)optval) + { + FIXME("SO_SNDBUF ignoring request to disable send buffering\n"); +#ifdef __APPLE__ + return 0; +#endif + } + convert_sockopt(&level, &optname); + break; + case WS_SO_RCVBUF: if (*(const int*)optval < 2048) { @@ -5828,7 +5839,6 @@ int WINAPI WS_setsockopt(SOCKET s, int level, int optname, * however, using it the BSD way fixes bug 8513 and seems to be what * most programmers assume, anyway */ case WS_SO_REUSEADDR: - case WS_SO_SNDBUF: case WS_SO_TYPE: convert_sockopt(&level, &optname); break;