Zebediah Figura : ws2_32: Explicitly stub setsockopt(SO_ERROR).

Alexandre Julliard julliard at winehq.org
Thu Jun 24 16:16:44 CDT 2021


Module: wine
Branch: master
Commit: a72d97dc4363ab0cff98ad8800ab6dcbb3d00122
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=a72d97dc4363ab0cff98ad8800ab6dcbb3d00122

Author: Zebediah Figura <z.figura12 at gmail.com>
Date:   Thu Jun 24 00:00:13 2021 -0500

ws2_32: Explicitly stub setsockopt(SO_ERROR).

This returns ENOPROTOOPT on Linux, but succeeds on Windows.

Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/ws2_32/socket.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/dlls/ws2_32/socket.c b/dlls/ws2_32/socket.c
index b183b85b0b3..2dd3cf20752 100644
--- a/dlls/ws2_32/socket.c
+++ b/dlls/ws2_32/socket.c
@@ -3548,6 +3548,11 @@ int WINAPI WS_setsockopt(SOCKET s, int level, int optname,
         case WS_SO_BROADCAST:
             return server_setsockopt( s, IOCTL_AFD_WINE_SET_SO_BROADCAST, optval, optlen );
 
+        case WS_SO_ERROR:
+            FIXME( "SO_ERROR, stub!\n" );
+            SetLastError( WSAENOPROTOOPT );
+            return -1;
+
         /* Some options need some conversion before they can be sent to
          * setsockopt. The conversions are done here, then they will fall through
          * to the general case. Special options that are not passed to
@@ -3603,7 +3608,6 @@ int WINAPI WS_setsockopt(SOCKET s, int level, int optname,
         /* The options listed here don't need any special handling. Thanks to
          * the conversion happening above, options from there will fall through
          * to this, too.*/
-        case WS_SO_ERROR:
         case WS_SO_KEEPALIVE:
         case WS_SO_OOBINLINE:
         /* BSD socket SO_REUSEADDR is not 100% compatible to winsock semantics.




More information about the wine-cvs mailing list