Module: wine Branch: oldstable Commit: b1b6ef827f98fb72a9caecb7d30a9598cda51d50 URL: https://source.winehq.org/git/wine.git/?a=commit;h=b1b6ef827f98fb72a9caecb7d...
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 (cherry picked from commit e7fd1ac3b265f2f86ec832268dbbc5425b78ecfc) Signed-off-by: Michael Stefaniuc mstefani@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 43a623e..1f4a5d5 100644 --- a/dlls/ws2_32/socket.c +++ b/dlls/ws2_32/socket.c @@ -5807,6 +5807,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) { @@ -5827,7 +5838,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;