Commit Graph

453 Commits

Author SHA1 Message Date
Alexandre Julliard 70073ff2d0 server: Return a WSA error code in accept_socket.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-20 16:26:04 +01:00
Alexandre Julliard 424a379f64 server: Return a WSA error code in create_socket.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-20 16:26:04 +01:00
Alexandre Julliard 4383a9d536 ws2_32: Return a WSA error code from _is_blocking().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-20 16:26:04 +01:00
Alexandre Julliard f670a162a0 server: Return WSA error codes in socket events.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-20 16:26:04 +01:00
Alistair Leslie-Hughes e7fd1ac3b2 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>
2018-11-19 22:42:40 +01:00
Sebastian Lackner 18e074b0f3 server: Support FILE_SKIP_COMPLETION_PORT_ON_SUCCESS on client-side asyncs.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=38960
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-25 20:32:03 +02:00
Michael Stefaniuc d58163b26d ws2_32: Use the ARRAY_SIZE() macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-12 23:15:32 +02:00
Hans Leidekker 6d6b4bffb3 ws2_32: Enable IP_DONTFRAGMENT by default for SOCK_STREAM sockets.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-11 00:41:07 +02:00
Alexandre Julliard 5dd1bad730 ws2_32: Add fallback data for getprotobyname/number.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-10 10:02:19 +02:00
Akihiro Sagawa f6b6c94add ws2_32: Fix ioctlsocket(FIONREAD) with listening socket.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-27 12:47:17 +01:00
Michael Müller 6fa715c270 w2_32: Ignore setting several port assignment related socket options.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-26 11:40:33 +01:00
Zebediah Figura 80677440cf ws2_32: Only set error codes for triggered events in WSAEnumNetworkEvents().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-20 20:12:35 +01:00
Alexandre Julliard dc203dd833 ws2_32: Lock the user output buffer during receives.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-03 13:38:29 +02:00
Stefan Dösinger a2053597cc ws2_32: Also check the FQDN when injecting the local IP.
Signed-off-by: Stefan Dösinger <stefan@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-30 09:03:41 +02:00
Huw Davies 2910dcea89 ws2_32: Don't return synchronously if the connection is refused.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-12 19:33:44 +09:00
Jacek Caban a71c18e7fd ws2_32: Added support for overlapped GetAddrInfoExW.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-02 13:52:37 +02:00
Jacek Caban a17ac691bc ws2_32: Added partial GetAddrInfoExW implementation.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-02 13:52:37 +02:00
Jacek Caban 037e6010da ws2_32: Return ADDRINFOEXW type from WS_getaddrinfoW.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-02 13:52:36 +02:00
Jacek Caban 001a8a4f27 ws2_32: Added FreeAddrInfoEx implementation.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-02 13:52:36 +02:00
Jacek Caban 39fe376e92 ws2_32: Factor out GetAddrInfoW implementation.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-02 13:52:36 +02:00
Jacek Caban cbfa90c390 ws2_32: Added GetAddrInfoExOverlappedResult stub implementation.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-31 19:50:54 +02:00
Kimmo Myllyvirta 32334704e8 ws2_32: Set return size when calling WSAIoctl with WS_SIO_GET_EXTENSION_FUNCTION_POINTER.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-12 11:44:41 +02:00
Alexandre Julliard 92b2172038 ws2_32: Use socklen_t where appropriate.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-16 13:55:19 +02:00
Owen Rudge accf5ef594 ws2_32: Extract IPv6 address from brackets in getaddrinfo.
Signed-off-by: Bruno Jesus <bjesus@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-13 10:26:24 +02:00
Jacek Caban 3cb6d50cd6 ws2_32: Added GetAddrInfoExCancel stub implementation.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-25 13:17:59 +02:00
Jacek Caban efdb722c17 ws2_32: Don't try to match host name in getaddrinfo if AI_NUMERICHOST hint is specified.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-16 18:33:47 +02:00
Stefan Dösinger 7a1142035d ws2_32: Don't post completion packet if receiving fails with error immediately.
Signed-off-by: Stefan Dösinger <stefan@codeweavers.com>
Signed-off-by: Bruno Jesus <bjesus@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-16 12:08:52 +02:00
Bruno Jesus 1639c23cae ws2_32: Use unsigned interface index on interface_bind_check.
Signed-off-by: Bruno Jesus <bjesus@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-11 10:17:50 -05:00
Jacek Caban e2469b2c3d ntdll: Remove no longer needed APC handling from APC_ASYNC_IO callbacks.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-11 19:59:06 +02:00
Jacek Caban 28c339031f server: Pass APC in async_data_t.
Also don't pass callback pointer that's not used anymore.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-11 19:57:34 +02:00
Jacek Caban f6cd817531 ws2_32: Store async callback in ws2_async_io struct.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-11 19:56:17 +02:00
Jacek Caban 35ca862025 ws2_32: Use register_async for WS2_async_send.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-05 19:15:53 +02:00
Jacek Caban 57e93b72bb ws2_32: Use register_async for WS2_async_recv.
This changes behaviour in case when winsock attempts to use both
completion routine and completion value. Tests from previous patch show
that it should fail anyway. It will be possible to properly return error
once APCs are passed to server in register_async request.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-05 19:15:44 +02:00
Jacek Caban da4688ff4f ws2_32: Added register_async helper.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-05 19:15:27 +02:00
Bruno Jesus b60cd68308 ws2_32: Fix WSAStringToAddress parsing for IPv6.
Signed-off-by: Bruno Jesus <bjesus@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-03 09:31:14 +01:00
Bruno Jesus 914e401aa9 ws2_32: Turn SIO_GET_EXTENSION_FUNCTION_POINTER into a table.
Signed-off-by: Bruno Jesus <bjesus@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-02 16:09:06 +01:00
Bruno Jesus b2c809a3d9 ws2_32: Make it clear that bit flags are in hex when tracing.
Signed-off-by: Bruno Jesus <bjesus@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-28 20:40:01 +01:00
Bruno Jesus 130452bb3d ws2_32: Discard MSG_PARTIAL as it is supported only in message protocols.
Signed-off-by: Bruno Jesus <bjesus@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-28 09:40:20 +01:00
Bruno Jesus dcf258685e ws2_32: Cope with NULL address in connect() call.
Signed-off-by: Bruno Jesus <bjesus@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-27 12:38:25 +01:00
Bruno Jesus f482eed298 ws2_32: Trace accept() error.
Signed-off-by: Bruno Jesus <00cpxxx@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-20 10:33:05 +01:00
Anton Romanov 531dcf2dd3 ws2_32: Ignore IPV6_V6ONLY setsockopt for AF_INET sockets.
Signed-off-by: Anton Romanov <theli.ua@gmail.com>
Signed-off-by: Bruno Jesus <00cpxxx@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-12 16:52:23 +01:00
Nikolay Sivov 24dbd9de93 ws2_32: Fix build failure on Mac.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-12-09 11:36:45 +01:00
Bruno Jesus c86bf9dc81 ws2_32: Implement IP_DONTFRAGMENT in [set|get]sockopt.
Signed-off-by: Bruno Jesus <00cpxxx@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-12-08 16:06:27 +01:00
Bruno Jesus 2251aeb6d2 ws2_32: Cache the memory used for poll() calls.
Signed-off-by: Bruno Jesus <00cpxxx@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-30 13:26:11 +01:00
Bruno Jesus e33527b2a7 ws2_32: Simplify IPv4 sprintf.
Signed-off-by: Bruno Jesus <00cpxxx@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-30 13:25:17 +01:00
Bruno Jesus fa172e1ca6 ws2_32: Add IDN resolution support to GetAddrInfoW.
Signed-off-by: Bruno Jesus <00cpxxx@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-30 13:25:14 +01:00
Roman Pišl 96eb36e4bb ws2_32: Fix the default behavior of IPV6_V6ONLY.
Signed-off-by: Roman Pišl <rpisl@seznam.cz>
Signed-off-by: Bruno Jesus <00cpxxx@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-30 17:20:47 +01:00
Jacek Caban 7e7f46f436 ws2_32: Added FreeAddrInfoExW stub.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-18 06:15:31 -07:00
Jacek Caban 93863d25fc ws2_32: Pass completion routing to NtDeviceIoControlFile in server_ioctl_sock only if caller provided completion routine.
Otherwise we're always doing non-blocking calls, preventing server from
doing the right thing (and in actually doing the opposite in
WS_SIO_ADDRESS_LIST_CHANGE case).

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-13 18:21:11 +02:00
Michael Stefaniuc 8581ae8cc5 ws2_32: Use debugstr_guid() to trace GUIDs.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-05 11:43:33 +02:00