[PATCH 3/5] server: Return a Win32 error code from IOCTL_AFD_WINE_GET_SO_ERROR.

Zebediah Figura zfigura at codeweavers.com
Mon Jul 5 19:14:17 CDT 2021


Fixes: fb3956fcf94397bed53598943a9524520bc23e08
Signed-off-by: Zebediah Figura <zfigura at codeweavers.com>
---
 dlls/ws2_32/tests/sock.c | 10 +++++-----
 server/sock.c            |  2 +-
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/dlls/ws2_32/tests/sock.c b/dlls/ws2_32/tests/sock.c
index 1b697423e27..df5a69b4564 100644
--- a/dlls/ws2_32/tests/sock.c
+++ b/dlls/ws2_32/tests/sock.c
@@ -3271,13 +3271,13 @@ static void test_select(void)
         id = 0xdeadbeef;
         ret = getsockopt(fdWrite, SOL_SOCKET, SO_ERROR, (char *)&id, &len);
         ok(!ret, "getsockopt failed with %d\n", WSAGetLastError());
-        todo_wine ok(id == WSAECONNREFUSED, "got error %u\n", id);
+        ok(id == WSAECONNREFUSED, "got error %u\n", id);
 
         len = sizeof(id);
         id = 0xdeadbeef;
         ret = getsockopt(fdWrite, SOL_SOCKET, SO_ERROR, (char *)&id, &len);
         ok(!ret, "getsockopt failed with %d\n", WSAGetLastError());
-        todo_wine ok(id == WSAECONNREFUSED, "got error %u\n", id);
+        ok(id == WSAECONNREFUSED, "got error %u\n", id);
 
         FD_ZERO_ALL();
         FD_SET(fdWrite, &readfds);
@@ -3307,7 +3307,7 @@ static void test_select(void)
         id = 0xdeadbeef;
         ret = getsockopt(fdWrite, SOL_SOCKET, SO_ERROR, (char *)&id, &len);
         ok(!ret, "getsockopt failed with %d\n", WSAGetLastError());
-        todo_wine ok(id == WSAECONNREFUSED, "got error %u\n", id);
+        ok(id == WSAECONNREFUSED, "got error %u\n", id);
 
         FD_ZERO_ALL();
         FD_SET(fdWrite, &readfds);
@@ -6515,13 +6515,13 @@ static void test_WSAPoll(void)
         err = 0xdeadbeef;
         ret = getsockopt(client, SOL_SOCKET, SO_ERROR, (char *)&err, &len);
         ok(!ret, "getsockopt failed with %d\n", WSAGetLastError());
-        todo_wine ok(err == WSAECONNREFUSED, "got error %u\n", err);
+        ok(err == WSAECONNREFUSED, "got error %u\n", err);
 
         len = sizeof(err);
         err = 0xdeadbeef;
         ret = getsockopt(client, SOL_SOCKET, SO_ERROR, (char *)&err, &len);
         ok(!ret, "getsockopt failed with %d\n", WSAGetLastError());
-        todo_wine ok(err == WSAECONNREFUSED, "got error %u\n", err);
+        ok(err == WSAECONNREFUSED, "got error %u\n", err);
 
         check_poll_todo(client, POLLWRNORM | POLLHUP | POLLERR);
 
diff --git a/server/sock.c b/server/sock.c
index befa9117c13..2b5915c87fe 100644
--- a/server/sock.c
+++ b/server/sock.c
@@ -2587,7 +2587,7 @@ static int sock_ioctl( struct fd *fd, ioctl_code_t code, struct async *async )
             {
                 if (sock->errors[i])
                 {
-                    error = sock->errors[i];
+                    error = sock_get_error( sock->errors[i] );
                     break;
                 }
             }
-- 
2.30.2




More information about the wine-devel mailing list