Akihiro Sagawa
ee2e5c0242
ws2_32: Disallow NULL in socket lookups.
...
NULL means an unused slot, not a valid socket.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-24 19:46:55 +02:00
Akihiro Sagawa
ffe20add58
ws2_32: Explicitly return WSAENOTSOCK for a file handle in getsockopt() except SO_OPENTYPE.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51671
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-24 19:46:53 +02:00
Akihiro Sagawa
2a45917ae2
ws2_32/tests: Add socket option validity tests for a file handle.
...
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-24 19:46:50 +02:00
Alistair Leslie-Hughes
d4f83ba77f
ws2_32: Handle success in addrinfo_err_from_unix.
...
When unix_getnameinfo is called, we end up with a warning fixme for no reason.
0740:fixme:winsock:addrinfo_err_from_unix unhandled error 0
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-23 20:51:17 +02:00
Zebediah Figura
eec47af638
ws2_32: Properly implement getsockopt(SO_CONNECT_TIME).
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-19 11:33:47 +02:00
Zebediah Figura
4af902eb4e
ws2_32: Use realloc() in get_{host, proto, serv}ent_buffer().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-19 11:33:33 +02:00
Zebediah Figura
357fb2be9b
ws2_32: Use malloc() instead of HeapAlloc().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-19 11:33:25 +02:00
Alex Henrie
d949b66dfd
ws2_32/tests: Add tabular socket option validity tests.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-18 20:08:08 +02:00
Alex Henrie
cf358c9351
ws2_32: Return PROTECTION_LEVEL_UNRESTRICTED for IPV6_PROTECTION_LEVEL.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-18 20:08:06 +02:00
Alex Henrie
cf43c365ce
ws2_32: Re-add support for getting IP_HDRINCL on raw sockets.
...
This reverts most of commit e001319304
.
My previous diagnosis was incorrect: Windows does support both getting
and setting IP_HDRINCL, but only on raw sockets. Very old versions of
Windows also accept it on UDP sockets.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-18 20:08:01 +02:00
Alex Henrie
e001319304
ws2_32: Drop support for getting the IP_HDRINCL socket option.
...
Windows only supports setting this option, not getting it.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-17 20:02:23 +02:00
Alex Henrie
1f63b16bb2
ws2_32: Always set error in setsockopt when the option is unrecognized.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-17 20:02:19 +02:00
Alex Henrie
f68923dca0
ws2_32: Hook up IPV6_RECVTCLASS.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-16 18:40:29 +02:00
Zebediah Figura
17871709e5
ws2_32/tests: Fix a test failure in test_GetAddrInfoExW().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-16 18:40:17 +02:00
Alexandre Julliard
d327527cec
ws2_32: Convert the Unix library to the __wine_unix_call interface.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-12 17:30:21 +02:00
Alexandre Julliard
948e791928
ws2_32: Avoid using wineserver definitions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-12 17:30:21 +02:00
Francois Gouget
c909e69fe4
ws2_32: Add a trailing linefeed to a FIXME().
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-06 19:56:22 +02:00
Zebediah Figura
815ac66558
ws2_32: Do not use the WS_ prefix in PE code.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-06 14:33:22 +02:00
Zebediah Figura
0c81cc2782
ws2_32: Build with msvcrt.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-06 14:33:22 +02:00
Zebediah Figura
d3138d711b
ws2_32: Read services from the etc/services file.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-06 11:01:07 +02:00
Zebediah Figura
8504e40d5b
ws2_32: Read protocols from the etc/protocol file.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-06 11:00:40 +02:00
Zebediah Figura
01885acd5d
ws2_32: Move getnameinfo() to the Unix library.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-05 23:11:23 +02:00
Zebediah Figura
c1c3691bed
ws2_32: Move gethostname() to the Unix library.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-05 23:11:23 +02:00
Alex Henrie
cade5944be
ws2_32: Hook up IPV6_PKTINFO.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-04 23:20:40 +02:00
Alex Henrie
71d1bb60f1
ws2_32: Hook up IPV6_HOPLIMIT.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-04 22:06:11 +02:00
Alex Henrie
0e76a54aae
ws2_32/tests: Add tests for IPv6 control messages.
...
Namely IPV6_HOPLIMIT and IPV6_PKTINFO.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-04 22:05:51 +02:00
Zebediah Figura
68257d0f39
ws2_32: Move gethostbyname() to the Unix library.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-04 11:34:00 +02:00
Zebediah Figura
684f03c4a3
ws2_32: Move gethostbyaddr() to the Unix library.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-04 11:33:58 +02:00
Zebediah Figura
d6555b966e
ws2_32: Allocate the addrinfo buffer on the PE side.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-04 11:33:27 +02:00
Zebediah Figura
e58405000c
ws2_32: Move getaddrinfo() support to a new Unix library.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-04 11:33:24 +02:00
Zebediah Figura
c07da78a2e
ws2_32: Get rid of supported_pf().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-04 11:33:18 +02:00
Zebediah Figura
671cf16f77
ws2_32: Reimplement inet_addr() on top of inet_pton().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-03 23:41:05 +02:00
Zebediah Figura
b159f6e256
ws2_32/tests: Add tests for inet_addr().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-03 23:41:05 +02:00
Zebediah Figura
53fe477d82
ws2_32/tests: Expand tests for inet_pton().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-03 23:41:05 +02:00
Zebediah Figura
4ed061f458
ws2_32/tests: Expand tests for WSAStringToAddress().
...
Adapted from RtlIpv4StringToAddress() tests.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-03 23:41:05 +02:00
Zebediah Figura
c70f64f82c
ws2_32: Check for presence in the socket list in closesocket().
...
Instead of trying to retrieve the fd.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-03 23:41:05 +02:00
Zebediah Figura
8c47f02cb5
ws2_32: Move the setsockopt(TCP_NODELAY) implementation to ntdll.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-02 11:32:18 +02:00
Zebediah Figura
b1669e3a4c
ws2_32: Move the getsockopt(TCP_NODELAY) implementation to ntdll.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-02 11:32:15 +02:00
Zebediah Figura
3e09e25068
ws2_32: Move the getsockopt(IRLMP_ENUMDEVICES) implementation to ntdll.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-02 11:32:12 +02:00
Zebediah Figura
55c761540d
ws2_32: Move the setsockopt(IPX_PTYPE) implementation to ntdll.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-02 11:32:10 +02:00
Zebediah Figura
ce1c5ffcae
ws2_32: Move the getsockopt(IPX_PTYPE) implementation to ntdll.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-02 11:32:07 +02:00
Zebediah Figura
bf633a97a0
ws2_32: Move the setsockopt(IPV6_V6ONLY) implementation to ntdll.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-30 13:46:15 +02:00
Zebediah Figura
43dfa9d437
ws2_32: Move the getsockopt(IPV6_V6ONLY) implementation to ntdll.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-30 13:46:11 +02:00
Zebediah Figura
81ba59bb21
ws2_32: Move the setsockopt(IPV6_UNICAST_IF) implementation to ntdll.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-30 13:46:08 +02:00
Zebediah Figura
a6b880a042
ws2_32: Move the getsockopt(IPV6_UNICAST_IF) implementation to ntdll.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-30 13:46:04 +02:00
Zebediah Figura
717766e58f
ws2_32: Move the setsockopt(IPV6_UNICAST_HOPS) implementation to ntdll.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-30 13:45:58 +02:00
Zebediah Figura
40adc6a295
ws2_32: Move the getsockopt(IPV6_UNICAST_HOPS) implementation to ntdll.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-30 13:45:55 +02:00
Zebediah Figura
15bc605224
ws2_32: Move the setsockopt(IPV6_MULTICAST_LOOP) implementation to ntdll.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-29 10:16:21 +02:00
Zebediah Figura
aab6e604a9
ws2_32: Move the getsockopt(IPV6_MULTICAST_LOOP) implementation to ntdll.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-29 10:16:19 +02:00
Zebediah Figura
a3f3ecf126
ws2_32: Move the setsockopt(IPV6_MULTICAST_IF) implementation to ntdll.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-29 10:16:17 +02:00