Module: wine Branch: master Commit: 6361a20c5231e818cb8c669c152f248758b47da3 URL: https://gitlab.winehq.org/wine/wine/-/commit/6361a20c5231e818cb8c669c152f248...
Author: Gabriel Brand gabrielb@braincalibration.de Date: Mon Jan 1 00:27:59 2024 +0100
server: Return failure in bind if the address is not found.
---
dlls/ws2_32/tests/sock.c | 2 -- server/sock.c | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-)
diff --git a/dlls/ws2_32/tests/sock.c b/dlls/ws2_32/tests/sock.c index c93fb62c9d2..b43d7d61867 100644 --- a/dlls/ws2_32/tests/sock.c +++ b/dlls/ws2_32/tests/sock.c @@ -12528,9 +12528,7 @@ static void test_bind(void)
WSASetLastError(0xdeadbeef); ret = bind(s, (const struct sockaddr *)&invalid_addr, sizeof(invalid_addr)); - todo_wine ok(ret == -1, "expected failure\n"); - todo_wine ok(WSAGetLastError() == WSAEADDRNOTAVAIL, "got error %u\n", WSAGetLastError());
WSASetLastError(0xdeadbeef); diff --git a/server/sock.c b/server/sock.c index 84c0d4a4931..c34fd3eb5eb 100644 --- a/server/sock.c +++ b/server/sock.c @@ -2231,7 +2231,7 @@ static int bind_to_interface( struct sock *sock, const struct sockaddr_in *addr in_addr_t bind_addr = addr->sin_addr.s_addr; struct ifaddrs *ifaddrs, *ifaddr; int fd = get_unix_fd( sock->fd ); - int err = 0; + int err = -1;
if (bind_addr == htonl( INADDR_ANY ) || bind_addr == htonl( INADDR_LOOPBACK )) return 0;