Zebediah Figura
9eea22f724
ws2_32: Move the setsockopt(SO_REUSEADDR) implementation to ntdll.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-29 19:55:22 +02:00
Zebediah Figura
f7cb96e53c
ws2_32: Move the getsockopt(SO_REUSEADDR) implementation to ntdll.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-29 19:55:22 +02:00
Zebediah Figura
f4df896e06
ws2_32: Handle SO_RCVTIMEO in the server.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-29 19:55:22 +02:00
Zebediah Figura
8312539efe
ws2_32: Use IOCTL_AFD_WINE_GET_SO_RCVBUF.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-28 19:43:28 +02:00
Zebediah Figura
388e7a7655
ws2_32: Use IOCTL_AFD_WINE_SET_SO_RCVBUF.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-28 19:43:28 +02:00
Zebediah Figura
061e85a548
ws2_32: Move the setsockopt(SO_OOBINLINE) implementation to ntdll.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-25 10:23:19 +02:00
Zebediah Figura
afa71f9a12
ws2_32: Move the getsockopt(SO_OOBINLINE) implementation to ntdll.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-25 10:23:15 +02:00
Zebediah Figura
2ba4175459
ws2_32: Implement setsockopt(SO_DONTLINGER) on top of Win32 setsockopt(SO_LINGER).
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-25 10:23:12 +02:00
Zebediah Figura
1d7d57326a
ws2_32: Implement getsockopt(SO_DONTLINGER) on top of Win32 getsockopt(SO_LINGER).
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-25 10:23:09 +02:00
Zebediah Figura
130b549671
ws2_32: Move the setsockopt(SO_LINGER) implementation to ntdll.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-25 10:23:05 +02:00
Zebediah Figura
f52df002b0
ws2_32: Move the getsockopt(SO_LINGER) implementation to ntdll.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-25 10:23:02 +02:00
Zebediah Figura
a7f39e3fbb
ws2_32: Move the setsockopt(SO_KEEPALIVE) implementation to ntdll.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-24 10:27:17 +02:00
Zebediah Figura
8aaef4cafd
ws2_32: Move the getsockopt(SO_KEEPALIVE) implementation to ntdll.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-24 10:27:14 +02:00
Zebediah Figura
a72d97dc43
ws2_32: Explicitly stub setsockopt(SO_ERROR).
...
This returns ENOPROTOOPT on Linux, but succeeds on Windows.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-24 10:27:10 +02:00
Zebediah Figura
fb3956fcf9
ws2_32: Use IOCTL_AFD_WINE_GET_SO_ERROR.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-24 10:26:45 +02:00
Zebediah Figura
d8dfce3edc
ws2_32: Make getsockopt(SO_DEBUG) into a stub.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-23 20:44:58 +02:00
Zebediah Figura
75fe1064f7
ws2_32/tests: Add some tests for SO_DEBUG.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-23 20:44:58 +02:00
Zebediah Figura
759408c3ae
ws2_32: Move the setsockopt(SO_BROADCAST) implementation to ntdll.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-23 20:44:58 +02:00
Zebediah Figura
d9b281e5c7
ws2_32: Move the getsockopt(SO_BROADCAST) implementation to ntdll.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-23 20:44:58 +02:00
Zebediah Figura
8eed10c534
ws2_32: Use IOCTL_AFD_WINE_GET_SO_ACCEPTCONN.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-23 20:44:58 +02:00
Zebediah Figura
fd7954974b
ws2_32: Explicitly forbid setting SO_TYPE.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-22 17:57:47 +02:00
Zebediah Figura
5d11333593
ws2_32/tests: Test setting SO_TYPE.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-22 17:57:47 +02:00
Zebediah Figura
c5487167df
ws2_32: Explicitly forbid setting SO_ACCEPTCONN.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-22 17:57:47 +02:00
Zebediah Figura
2f0e8c084e
ws2_32/tests: Test setting SO_ACCEPTCONN.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-22 17:57:47 +02:00
Zebediah Figura
2fb11821bf
ws2_32: Use Win32 getsockname() and getpeername() in SO_BSP_STATE.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-22 17:57:47 +02:00
Zebediah Figura
5bece995c3
ws2_32: Use IOCTL_AFD_WINE_GET_INFO.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-21 10:45:07 +02:00
Zebediah Figura
414b31bc0b
ws2_32: Reimplement select() on top of IOCTL_AFD_POLL.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-21 10:45:01 +02:00
Zebediah Figura
639a4cab1d
ws2_32: Use IOCTL_AFD_POLL in WSAPoll().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-21 10:44:58 +02:00
Zebediah Figura
b3e9d0f88c
ws2_32/tests: Avoid some more test failures on Vista.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-21 10:44:55 +02:00
Zebediah Figura
5a20e0878e
ws2_32: Use IOCTL_AFD_WINE_DEFER.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-18 10:12:28 +02:00
Zebediah Figura
095ba0244a
ws2_32: Make the indentation in WSAAccept() consistent with the rest of the file.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-18 10:12:14 +02:00
Zebediah Figura
c56784199d
ws2_32: Remove some unused declarations.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-18 10:12:07 +02:00
Zebediah Figura
569f1ac018
ws2_32: Move the getpeername() implementation to ntdll.
...
This adds todo_wine to a couple of tests; however, these are overly zealous
invalid parameter tests, and fixing them is nontrivial.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-17 09:19:31 +02:00
Zebediah Figura
93d001fa81
ws2_32: Check if the socket is bound in ConnectEx() in the server.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-17 09:19:19 +02:00
Zebediah Figura
5295cc273e
ws2_32: Pass a Win32 socket address to IOCTL_AFD_WINE_CONNECT.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-17 09:19:13 +02:00
Zebediah Figura
f0b42b2ffa
ws2_32: Check if the socket is bound in listen() in the server.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-17 09:18:51 +02:00
Zebediah Figura
5c009c17b3
ws2_32: Reimplement bind() and getsockname() on top of IOCTL_AFD_BIND and IOCTL_AFD_GETSOCKNAME respectively.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-16 09:03:20 +02:00
Zebediah Figura
a997c3980f
server: Return STATUS_ADDRESS_ALREADY_ASSOCIATED from IOCTL_AFD_BIND if the socket is already bound.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-16 09:03:20 +02:00
Zebediah Figura
10bfe80ad5
ws2_32/tests: Add some tests for IOCTL_AFD_BIND and IOCTL_AFD_GETSOCKNAME.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-16 09:03:20 +02:00
Zebediah Figura
533fd1b127
ws2_32/tests: Add a couple more tests for getsockname().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-16 09:02:24 +02:00
Zebediah Figura
0e2a998a33
ws2_32: Use IOCTL_AFD_WINE_MESSAGE_SELECT.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-15 20:43:08 +02:00
Zebediah Figura
0272f19049
ws2_32/tests: Add some tests for IOCTL_AFD_GET_EVENTS.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-15 20:43:03 +02:00
Zebediah Figura
a916887b94
ws2_32: Use IOCTL_AFD_GET_EVENTS in WSAEnumNetworkEvents().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-15 20:42:59 +02:00
Zebediah Figura
fd9a521c61
ws2_32/tests: Add some tests for IOCTL_AFD_EVENT_SELECT.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-14 10:08:03 +02:00
Zebediah Figura
6e4f03d745
ws2_32: Use IOCTL_AFD_EVENT_SELECT.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-14 10:07:58 +02:00
Zebediah Figura
8698083dd0
ws2_32: Implement SIO_BASE_HANDLE.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50520
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-10 20:50:54 +02:00
Zebediah Figura
e568afa6bd
ws2_32: Use IOCTL_AFD_WINE_COMPLETE_ASYNC in SIO_UDP_CONNRESET.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-10 20:50:49 +02:00
Zebediah Figura
9344a490a4
server: Fail with WSAEINVAL or WSAEALREADY when trying to connect a socket that is already connecting via nonblocking connect().
...
Fixes connection in Mortal Kombat 11; reported by Thomas Crider.
Fixes: a891713f48
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-10 20:50:32 +02:00
Zebediah Figura
7326b21241
server: Return STATUS_INVALID_PARAMETER when trying to call connect() on a socket with an active ConnectEx() async.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-10 20:50:22 +02:00
Zebediah Figura
5b981c72c3
ws2_32/tests: Add more tests for calling functions on a connecting socket.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-10 20:50:13 +02:00
Zebediah Figura
0a4a7c4345
ws2_32: Return WSAEOPNOTSUPP in FIOASYNC.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-09 08:57:41 +02:00
Zebediah Figura
b8bb6bae8f
ws2_32: Return WSAEOPNOTSUPP in SIO_FLUSH.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-09 08:57:36 +02:00
Zebediah Figura
ee03ed09f6
ws2_32: Use IOCTL_AFD_WINE_COMPLETE_ASYNC for unimplemented ioctls.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-09 08:57:22 +02:00
Zebediah Figura
dddd46624b
ws2_32: Use IOCTL_WINE_AFD_COMPLETE_ASYNC in SIO_ROUTING_INTERFACE_QUERY.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-09 08:57:15 +02:00
Zebediah Figura
306b244107
ws2_32: Fix the indentation of SIO_ROUTING_INTERFACE_QUERY.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-09 08:57:09 +02:00
Zebediah Figura
1c5b19e123
ws2_32: Use IOCTL_WINE_AFD_KEEPALIVE_VALS.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-08 10:17:32 +02:00
Zebediah Figura
2afb4356fe
ws2_32: Use IOCTL_AFD_WINE_GET_INTERFACE_LIST.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-08 10:17:27 +02:00
Zebediah Figura
de89b98b37
ws2_32: Explicitly ignore the output buffer in FIONBIO.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51231
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-08 10:17:20 +02:00
Zebediah Figura
66109294b8
ws2_32/tests: Test passing an output buffer to FIONBIO.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-08 10:17:17 +02:00
Zebediah Figura
aadcff491f
ws2_32: Wait for synchronous ioctl completion in server_ioctl_sock().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-07 21:41:15 +02:00
Zebediah Figura
8c26fca5c2
server: Don't rely on async_is_blocking() to determine whether IOCTL_AFD_WINE_ADDRESS_LIST_CHANGE should block.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-07 21:41:15 +02:00
Zebediah Figura
0e05a7f8cd
ws2_32: Use IOCTL_WINE_AFD_COMPLETE_ASYNC in SIO_ADDRESS_LIST_QUERY.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-07 21:41:15 +02:00
Zebediah Figura
82c7da313e
ws2_32: Use getifaddrs() and if_nametoindex() directly in interface_bind().
...
In order to avoid accessing iphlpapi.
We will need to move this code to ntdll or the server, but we can't access
iphlpapi from either. Even accessing a lower-level interface (i.e. ndis) is
hard—we have no good way to enumerate ndis devices from either (without
duplicating large parts of setupapi).
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-07 21:41:15 +02:00
Zebediah Figura
96d3e5a5ec
ws2_32/tests: Add more tests for sockets that cannot be accepted into.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-04 10:20:51 +02:00
Zebediah Figura
1f44a257db
ws2_32: Use IOCTL_AFD_WINE_SIOCATMARK.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-03 17:42:19 +02:00
Zebediah Figura
800a42b90b
ws2_32: Use IOCTL_AFD_WINE_FIONREAD.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-03 17:42:19 +02:00
Zebediah Figura
d1cd6f4a57
ws2_32: Fail with WSAEINVAL if a requested extension function is not found.
...
Rather than WSAEOPNOTSUPP.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-03 17:42:19 +02:00
Zebediah Figura
135ae49ff4
ws2_32: Use IOCTL_WINE_AFD_COMPLETE_ASYNC in SIO_GET_EXTENSION_FUNCTION_POINTER.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-02 20:16:08 +02:00
Zebediah Figura
a70c5172c6
ws2_32: Use IOCTL_AFD_WINE_FIONBIO.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-02 20:16:08 +02:00
Zebediah Figura
2ead3a1124
ws2_32: Use socket_apc for WSAIoctl() completion.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-01 09:12:49 +02:00
Zebediah Figura
e3e17ba7f8
ws2_32: Always return WSAEFAULT from WSAIoctl() if ret_size is NULL.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-01 09:12:29 +02:00
Zebediah Figura
fde6cd46c8
ws2_32/tests: Expand tests for SIO_GET_INTERFACE_LIST.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-01 09:12:23 +02:00
Zebediah Figura
7852d202ac
ws2_32/tests: Expand tests for SIO_ADDRESS_LIST_QUERY.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-01 09:12:15 +02:00
Zebediah Figura
faf66ae944
ws2_32/tests: Fix yet another test failure with Vista or older.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-01 09:12:08 +02:00
Zebediah Figura
e8ccb28c38
ws2_32/tests: Expand tests for SIO_ROUTING_INTERFACE_QUERY.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-31 18:04:31 +02:00
Zebediah Figura
de48f96d8c
ws2_32/tests: Add more tests for SIO_GET_EXTENSION_FUNCTION_ADDRESS.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-31 18:04:29 +02:00
Zebediah Figura
e969cf095e
ws2_32/tests: Add some tests for unsupported socket ioctls.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-31 18:04:27 +02:00
Zebediah Figura
92989dbb1f
ws2_32/tests: Fix some more test failures on Vista and older.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-31 18:04:25 +02:00
Zebediah Figura
2543d4b0af
ws2_32/tests: Call getsockname() on the right socket.
...
Also fixes spurious test failures wherein the broken call would return ENOTSOCK.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-31 18:04:22 +02:00
Zebediah Figura
738dc41e08
ws2_32/tests: Expand tests for SIO_KEEPALIVE_VALS.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-28 21:53:07 +02:00
Zebediah Figura
c680f6a021
ws2_32/tests: Add more tests for FIONBIO.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-28 21:53:07 +02:00
Zebediah Figura
2795fa9c00
ws2_32/tests: Separate and expand tests for FIONREAD and SIOCATMARK.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-28 21:53:07 +02:00
Zebediah Figura
f2305aebd9
ws2_32: Use IOCTL_AFD_WINE_TRANSMIT.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-28 21:53:07 +02:00
Zebediah Figura
58694d1f75
ws2_32: Use IOCTL_AFD_WINE_SENDMSG in WS2_sendto().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-27 11:35:03 +02:00
Zebediah Figura
6682aa4747
ws2_32: Use IOCTL_AFD_WINE_RECVMSG in WS2_recv_base().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-27 11:34:27 +02:00
Zebediah Figura
5c1be1dbae
ws2_32/tests: Add tests for IOCTL_AFD_POLL.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-25 21:13:00 +02:00
Zebediah Figura
30fd3019e1
server: Allow opening the Afd device with a file name.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50974
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-25 09:31:28 +02:00
Zebediah Figura
4fe9055499
ws2_32/tests: Add some tests for opening the Afd device.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-25 09:31:16 +02:00
Zebediah Figura
1ed574a03e
ws2_32/tests: Add some tests for IOCTL_AFD_RECV.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-24 11:42:37 +02:00
Zebediah Figura
7fb3e57d8e
ws2_32/tests: Add some tests for SO_RCVTIMEO.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-21 08:58:05 +02:00
Zebediah Figura
40e3e959fd
ws2_32/tests: Extend WSARecvMsg() tests a bit.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-21 08:58:03 +02:00
Zebediah Figura
53dc1b0a58
ws2_32: Use IOCTL_AFD_WINE_SHUTDOWN in WS_shutdown().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-19 10:33:21 +02:00
Zebediah Figura
89e1cf3d44
ws2_32: Use IOCTL_AFD_WINE_SHUTDOWN in WS2_DisconnectEx().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-19 10:33:13 +02:00
Zebediah Figura
416072a84c
ws2_32: Do not use SHUT_RD.
...
Win32 SD_RECEIVE has the following effects on a TCP or UDP socket:
* further calls to recv() et al. fail with ESHUTDOWN. However, Linux and Mac
instead return 0.
* currently pending calls to recv() are not affected. However, Linux and Mac
cause them to return 0.
* calls to WSAPoll() are unaffected. However, Linux and Mac instead signal
both POLLHUP and POLLIN.
* for TCP connections, further data sent by the peer causes the connection to be
reset. Mac and BSD will silently drop data, and Linux simply queues it
forever.
In short, SHUT_RD does nothing that we want it to do on Linux or Mac (and
probably also BSD, though I am unable to test this).
Most of this impedance mismatch can be worked around in Wine, except for
WSAPoll(). Since poll() will always return POLLHUP, we can't safely ask for
POLLOUT, which we may need to do. Hence, since we aren't getting any benefit
from SHUT_RD, don't use it.
Note that this doesn't actually fix any tests, since we have some rather bizarre
logic to defer shutdown anyway (for an asynchronous socket, we don't call
shutdown(SHUT_RD) until the peer sends data; this is probably an unintended bug,
but "fixing" it ends up causing test failures, which is the main impetus for
this patch.)
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-19 10:32:51 +02:00
Zebediah Figura
a891713f48
ws2_32: Use IOCTL_AFD_WINE_CONNECT in connect().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-18 09:56:29 +02:00
Zebediah Figura
d3b6c772a5
ws2_32: Use IOCTL_AFD_WINE_CONNECT in ConnectEx().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-18 09:56:27 +02:00
Zebediah Figura
8fbf62ec47
ws2_32: Remove a leftover cast.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-18 09:56:20 +02:00
Zebediah Figura
520a84870f
ws2_32: Cache the synchronous I/O event in the per-thread data.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-18 09:56:18 +02:00
Zebediah Figura
cdd24b1d9f
ws2_32: Use IOCTL_AFD_LISTEN.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-14 11:57:57 +02:00
Zebediah Figura
98d1dc31fb
include: Rename Wine-specific socket ioctls.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-14 11:54:11 +02:00
Zebediah Figura
21efebbdc1
server: Always clear pending messages in sock_wake_up().
...
Instead of clearing all messages when any match.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-14 11:53:59 +02:00
Zebediah Figura
aa6b2482cc
server: Poll for FD_CLOSE even if we cannot receive more data.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-14 11:53:54 +02:00
Hans Leidekker
e7af1f92a3
ws2_32: Add support for hints in GetAddrInfoExW.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-13 16:45:28 +02:00
Zebediah Figura
4c409f8a3b
server: Post socket events only if selecting for them.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-13 10:41:54 +02:00
Zebediah Figura
53210ceb0e
ws2_32: Clear FD_OOB instead of FD_READ when receiving OOB data.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-13 10:41:38 +02:00
Zebediah Figura
037fccc0df
server: Do not send messages for events that are not currently being selected for.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-13 10:41:25 +02:00
Zebediah Figura
11102116ac
ws2_32/tests: Verify that recv() does not reset a pending FD_CLOSE.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-13 10:41:18 +02:00
Zebediah Figura
44a3c70d77
server: Reset the reported event mask in set_socket_event only when using window messages.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-13 10:41:12 +02:00
Zebediah Figura
9fd8a298dd
ws2_32/tests: Add some tests for shutdown with completion ports.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-12 10:43:07 +02:00
Zebediah Figura
ae76d94e55
ws2_32/tests: Clean up and expand tests for DisconnectEx().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-12 10:43:07 +02:00
Zebediah Figura
c64f454808
ws2_32/tests: Add some tests for shutdown().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-11 20:34:07 +02:00
Zebediah Figura
32c095b0da
ws2_32/tests: Add more tests for connect() and ConnectEx() with completion ports.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-11 20:34:05 +02:00
Zebediah Figura
19246e5089
ws2_32/tests: Do not close the port passed to CreateIoCompletionPort separately from the port returned.
...
They are the same port handle.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-11 20:34:03 +02:00
Zebediah Figura
9e448142c6
ws2_32/tests: Test calling ConnectEx() on a socket which is being accepted into.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-10 20:33:34 +02:00
Zebediah Figura
258cd1cdbc
ws2_32/tests: Add a couple of tests for passing empty buffers to recv().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-10 20:33:34 +02:00
Zebediah Figura
cb117a1a15
ws2_32/tests: Clean up and expand tests for WSAPoll().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-10 20:33:34 +02:00
Zebediah Figura
1f35115360
ws2_32/tests: Add some tests for nonblocking async recv().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-07 22:22:49 +02:00
Zebediah Figura
025d154463
ws2_32/tests: Always return overlapped sockets from tcp_socketpair().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-07 09:34:44 +02:00
Zebediah Figura
0abc324571
ws2_32: Return TRUE from WSAGetOverlappedResult() if the NT status denotes success.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-07 09:34:42 +02:00
Zebediah Figura
5a8dc6cd2e
ws2_32: Use NtStatusToWSAError() in WSAGetOverlappedResult().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-07 09:34:40 +02:00
Zebediah Figura
54a39d5779
ws2_32: Add more status codes to NtStatusToWSAError().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-07 09:34:37 +02:00
Zebediah Figura
0f9d9a0326
ws2_32: Map EINPROGRESS to STATUS_DEVICE_NOT_READY.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-06 08:12:05 +02:00
Zebediah Figura
44c395d616
ws2_32: Map EFAULT to STATUS_ACCESS_VIOLATION.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-06 08:11:48 +02:00
Zebediah Figura
cbd4f85ad3
ws2_32: Map ENOTCONN to STATUS_INVALID_CONNECTION.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-06 08:11:28 +02:00
Zebediah Figura
7a934b708c
ws2_32: Map EADDRINUSE to STATUS_SHARING_VIOLATION.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-05 10:19:48 +02:00
Zebediah Figura
08da4ba927
ws2_32: Map EWOULDBLOCK to STATUS_DEVICE_NOT_READY.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-05 10:19:03 +02:00
Zebediah Figura
9195da83b9
ws2_32/tests: Add some tests for WSAGetOverlappedResult() status mapping.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-04 09:37:36 +02:00
Zebediah Figura
b9cfd6eddb
ws2_32: Move namespace provider stubs to protocol.c.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-04 09:37:31 +02:00
Zebediah Figura
ec6940cd3f
ws2_32: Move byte order conversion functions to protocol.c.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-04 09:37:28 +02:00
Zebediah Figura
615028f8ba
ws2_32: Move address/string conversion functions to protocol.c.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-04 09:37:25 +02:00
Zebediah Figura
cfdaa7fdaf
ws2_32: Move service lookup functions to protocol.c.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-03 21:07:28 +02:00
Zebediah Figura
5d9fe03637
ws2_32: Move protocol lookup functions to protocol.c.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-03 21:07:26 +02:00
Zebediah Figura
877e3e24d4
ws2_32: Move name info functions to protocol.c.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-03 21:07:24 +02:00
Zebediah Figura
ec9f311930
ws2_32: Move host lookup functions to protocol.c.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-03 21:07:21 +02:00
Zebediah Figura
e30b16d738
ws2_32: Move getaddrinfo() and related functions to a separate file.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-03 21:07:18 +02:00
Zebediah Figura
2deb8c2825
ws2_32: Don't call free_per_thread_data() on process exit.
...
It is redundant.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-30 22:59:50 +02:00
Zebediah Figura
adb138c489
ws2_32: Do not free a static critical section.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-30 22:59:50 +02:00
Zebediah Figura
2adcb77c3e
ws2_32/tests: Add some tests for calling methods on a connecting socket.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-30 22:59:50 +02:00
Zebediah Figura
c03d345ffc
ws2_32/tests: Rewrite test_events().
...
Separate the tests by event type, make them much more exhaustive, and use a
simpler method of validating event sequences.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-30 22:59:50 +02:00
Zebediah Figura
055ed95a24
ws2_32/tests: Add some tests for bind().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-30 22:59:50 +02:00
Zebediah Figura
b7c3135444
ws2_32/tests: Move namespace provider tests to protocol.c.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-29 10:48:59 +02:00
Zebediah Figura
8b20809354
ws2_32/tests: Move address/string conversion tests to protocol.c.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-29 10:48:59 +02:00
Zebediah Figura
29fafd5569
ws2_32/tests: Move service lookup tests to protocol.c.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-29 10:48:59 +02:00
Zebediah Figura
1699d4b785
ws2_32/tests: Move host lookup tests to protocol.c.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-29 10:48:59 +02:00
Zebediah Figura
edd9ef9c27
ws2_32/tests: Move address lookup tests to protocol.c.
...
sock.c is huge. This doesn't bother some people, but I find that it can be
harder to navigate and slower to compile. Splitting it is tricky, but I think
there's a pretty natural divide between functions that operate on sockets
(e.g. bind, listen, recv, getsockname) and functions that don't (e.g.
get*info, inet_*, get*by*, WSC*).
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-29 10:48:59 +02:00
Zebediah Figura
904c05d3d3
include: Do not include winsock.h in winsock2.h.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-27 18:55:24 +02:00
Francois Gouget
6ccd501503
ws2_32/tests: Load GetHostNameW() dynamically.
...
It is not available on Windows 7 and lower.
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-21 22:11:27 +02:00
Alexandre Julliard
50c40b913a
ws2_32: Install network database files.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=12076
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-15 17:30:50 +02:00
Hans Leidekker
998e5eaddb
ws2_32: Implement GetHostNameW.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49286
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-12 19:32:15 +02:00
Alexandre Julliard
2330a5860a
ntdll: Stop exporting wine_server_send_fd() and wine_server_release_fd().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-05 15:07:01 +02:00
Paul Gofman
904f7cfbae
ws2_32: Copy send buffer data for async send in WS2_ConnectEx().
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50738
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-24 20:48:21 +01:00
Jiangyi Chen
37b7d573b2
ws2_32: Add a missing break.
...
Signed-off-by: Jiangyi Chen <chenjiangyi@uniontech.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-15 22:22:19 +01:00
Hans Leidekker
dc02bbee54
ws2_32: Fix buffer size query in WSAAddressToStringW.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-20 22:12:28 +01:00
Hans Leidekker
e7dc82377b
ws2_32: Avoid returning duplicate entries from WS_getaddrinfo.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-20 22:12:24 +01:00
Jeff Latimer
89b82195cd
ws2_32: Do not print an ERR message when returning WSAEWOULDBLOCK from WSAIoctl().
...
Signed-off-by: Jeff Latimer <lats@yless4u.com.au>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-20 11:10:44 +01:00
Paul Gofman
e0238b6c76
ws2_32: Use if_nameindex() instead of SIOCGIFNAME.
...
Fixes Mac build broken by 03fcb54c0e
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50525
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-19 13:40:25 +01:00
Paul Gofman
03fcb54c0e
ws2_32: Reimplement SIO_GET_INTERFACE_LIST on top of GetIpAddrTable().
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-18 22:46:37 +01:00
Damjan Jovanovic
47d50bbbc2
ws2_32: Deal with getaddrinfo() returning NULL ai_canonname despite AI_CANONNAME.
...
This fixes a wineboot crash on FreeBSD, where getaddrinfo() returns a NULL
ai_canonname, causing wineboot to pass NULL to strchr().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50408
Signed-off-by: Damjan Jovanovic <damjan.jov@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-28 12:27:10 +01:00
Paul Gofman
e695982db3
ws2_32/tests: Don't fail the test in test_wsaioctl() if only one interface is available.
...
Fixes test failure on Testbot.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-17 10:46:45 +01:00
Paul Gofman
f17404f8ed
ws2_32: Fix buffer size check in WSAIoctl() for SIO_GET_INTERFACE_LIST.
...
Fixes out of bound memory access in Anno 1404 Addon.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-16 11:03:10 +01:00
Francois Gouget
948e08152b
ws2_32/tests: Skip some raw socket tests when missing elevated privileges.
...
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-14 17:02:39 +01:00
Francois Gouget
b344ccd857
ws2_32: Fix the spelling of a comment.
...
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-25 22:51:35 +01:00
Paul Gofman
2793bdeb26
ws2_32: Force adding completion for error status in WS2_ConnectEx().
...
Fixes Paradox launcher hang on start (which happens after commit
0c2f556afe
).
The referenced commit did not introduce the problem, it just made
getsockopt(..., WS_SO_PROTOCOL_INFOW, ) working and the application
is taking another path after getting XP1_IFS_HANDLES flag for protocol.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-13 21:57:16 +01:00
Zebediah Figura
b9f8adb243
server: Forbid accepting into the same socket more than once.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-20 22:54:02 +02:00
Zebediah Figura
93fb921ca7
ws2_32: Use server-side async I/O in accept().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-20 22:54:02 +02:00
Zebediah Figura
0bbd3f6617
ws2_32: Use server-side async I/O in AcceptEx().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-20 22:54:01 +02:00
Zebediah Figura
a0d386a310
ws2_32/tests: Fix an intermittent test failure on w10pro64.
...
Much like 2aebe0b628
.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-19 11:36:18 +02:00
Zebediah Figura
0c249e6125
ws2_32/tests: Add more tests for passing short buffers to AcceptEx().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-16 22:05:40 +02:00
Zebediah Figura
2aebe0b628
ws2_32/tests: Fix a test failure on w10pro64.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-16 22:05:37 +02:00
Zebediah Figura
ff8b5a51d7
ws2_32/tests: Remove workarounds from test_events().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-16 22:05:35 +02:00
Zebediah Figura
102c7903ea
ws2_32/tests: Remove some workarounds for no longer supported versions of Windows.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-16 22:05:33 +02:00
Zebediah Figura
d1461b622e
ws2_32/tests: Rewrite the CF_DEFER test in test_AcceptEx().
...
The previous test in fact regularly failed on Windows, hidden by the
presence of broken(), since both sockets could be connected before the
listener was signaled.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-16 22:05:28 +02:00
Zebediah Figura
ecc790ad47
ws2_32/tests: Avoid ok(0, ...) where the condition can be checked directly.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-06 11:56:28 +02:00
Zebediah Figura
94ea4252cf
ws2_32/tests: Link directly to more functions.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-06 11:56:25 +02:00
Zebediah Figura
ee38e167d1
ws2_32/tests: Make the tests less verbose by default.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-06 11:56:21 +02:00
Zebediah Figura
f65340704f
ws2_32/tests: Avoid using skip() or trace() for tests that should not fail.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-06 11:56:16 +02:00
Zebediah Figura
2600ccf27f
ws2_32: Use IOCTL_AFD_ACCEPT_INTO.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-02 10:01:51 +02:00
Zebediah Figura
c46ab05e55
ws2_32: Use IOCTL_AFD_ACCEPT.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-02 10:01:04 +02:00
Zebediah Figura
b1f2b61be0
server: Return Win32 socket types from get_socket_info.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-01 11:50:40 +02:00
Zebediah Figura
ac36b8ff01
ws2_32: Set default socket options in the server.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-01 11:50:22 +02:00
Zebediah Figura
abcc75cbcf
ws2_32: Pass Win32 socket types to the server.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-01 11:49:27 +02:00
Zebediah Figura
0c2f556afe
ws2_32: Reimplement ws_protocol_info() using the supported_protocols array.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-29 12:03:12 +02:00
Zebediah Figura
9498f9625a
ws2_32: Add protocol information for TCP and UDP over IPv6.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-29 12:03:10 +02:00
Zebediah Figura
02a764e702
ws2_32: Look for supported socket parameters if any parameters to WSASocket() are zero.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-29 12:03:08 +02:00
Zebediah Figura
f4d376ea07
ws2_32: Reimplement WSAEnumProtocols() using a flat array of WSA_PROTOCOLINFO structures.
...
Looking up protocol information by protocol number is not reliable, as protocol
numbers for different families may overlap.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-29 12:03:06 +02:00
Alexandre Julliard
9fff80d876
ws2_32: Retrieve the FQDN only when necessary in getaddrinfo().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-28 17:03:58 +02:00
Zebediah Figura
2a573c6f48
ws2_32: Always return WSAEINVAL if AF_UNSPEC is used with a zero protocol.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-25 10:51:15 +02:00
Zebediah Figura
088b7c5814
ws2_32/tests: Add more tests for WSASocket() parameters.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-25 10:51:12 +02:00
Zebediah Figura
c6806e3f20
ws2_32: Translate SIO_ADDRESS_LIST_CHANGE into a proper NT ioctl.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-25 10:51:08 +02:00
Zebediah Figura
8fb897a571
ws2_32: Translate WSA_FLAG_OVERLAPPED to NT overlapped flags.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-25 10:51:05 +02:00
Zebediah Figura
18df4912f4
ws2_32: Reimplement WSASocketW() on top of NtOpenFile() and IOCTL_AFD_CREATE.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-22 14:04:45 +02:00
Haidong Yu
1e198e17de
ws2_32: Add missing LeaveCriticalSection.
...
Signed-off-by: Haidong Yu <yuhaidong@uniontech.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-21 21:42:13 +02:00
Alistair Leslie-Hughes
0f515c8ebe
ws2_32: Map AI ALL_option in getaddrinfo().
...
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-14 19:42:40 +02:00
Zebediah Figura
470b9d0379
ws2_32: Close all open sockets in WSACleanup().
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=18670
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-11 16:57:42 +02:00
Zebediah Figura
23dbfaadbb
ws2_32: Keep a list of open sockets.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-11 16:57:42 +02:00
Aaro Altonen
652f1f9642
ws2_32: Improve WSCGetProviderPath() stub.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45801
Signed-off-by: Aaro Altonen <a.altonen@hotmail.com>
Signed-off-by: Gijs Vermeulen <gijsvrm@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-31 22:05:01 +02:00
Hans Leidekker
a6d9f46b25
ws2_32: Avoid a crash in WS_getaddrinfo when the specified service doesn't exist.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49656
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-11 18:08:13 +02:00
Alistair Leslie-Hughes
587732acb7
ws2_32: Correct returned error code for an invalid socket.
...
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-27 23:28:16 +02:00
Alex Henrie
046475d88e
ws2_32/tests: Allow ESP and AH protocols to be missing on Windows.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-27 23:28:16 +02:00
Alex Henrie
a16f91ae36
ws2_32: Avoid depending on system getprotoby(name|number) functions.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 23:16:52 +02:00