Commit Graph

676 Commits

Author SHA1 Message Date
Michael Müller 0601c86542 ws2_32: Don't return an error in WS_select when EINTR happens during timeout. 2015-04-06 16:10:14 +09:00
Bruno Jesus 5c8aad8d76 ws2_32: Fix copy & paste error in fd_sets_to_poll (Coverity). 2015-04-06 12:10:45 +09:00
Alexandre Julliard 125b079f60 ws2_32: Include wsnwlink.h even without IPX support. 2015-04-04 11:55:56 +09:00
Bruno Jesus 846febbc3d ws2_32: Better trace setsockopt/getsockopt. 2015-04-03 00:33:28 +09:00
Bruno Jesus e845bded34 ws2_32: Fix return value when receiving with MSG_OOB without data to read. 2015-03-31 14:49:50 +09:00
Bruno Jesus 45d64ce26b ws2_32/tests: Skip part of OOB test to unfreeze NT4 test.
NT4 doesn't care about OOB_INLINE and receives data in the wrong recv
call so the next call never receives data and hangs forever. Skip it
to resume NT4 test normally.
2015-03-31 14:49:31 +09:00
Bruno Jesus 5103291645 ws2_32/tests: Add more WSAEnumNetworkEvents tests. 2015-03-31 14:49:25 +09:00
Bruno Jesus 10d51ce855 ws2_32: Check for OOB data in select() calls when not OOB_INLINED. 2015-03-30 16:32:50 +09:00
Bruno Jesus 10f7265270 ws2_32: Do not poll unbound descriptors. 2015-03-30 16:32:36 +09:00
Bruno Jesus b2556a2c34 ws2_32: Ensure sockets in exceptfds get set when an error occurs. 2015-03-30 16:31:53 +09:00
Bruno Jesus 57e7a562bd ws2_32: Add a helper to check if a socket is bound or not. 2015-03-30 16:31:23 +09:00
Bruno Jesus dcc0bae95d ws2_32: Convert send/recv flags to native system. 2015-03-30 16:30:48 +09:00
Bruno Jesus d73330e4d8 ws2_32: Don't try to receive data in an OOB_INLINED socket with MSG_OOB. 2015-03-30 16:29:39 +09:00
Frédéric Delanoy f6a341c747 Assorted spelling/grammar fixes. 2015-03-27 22:29:48 +09:00
Francois Gouget ae6e1e2e38 ws2_32: Add support for WSA_FLAG_NO_HANDLE_INHERIT. 2015-03-17 14:17:46 +09:00
Bruno Jesus a19febc1a7 ws2_32/tests: Check the OOB mark in the right place. 2015-03-16 15:08:46 +09:00
Bruno Jesus 8042dbac55 ws2_32/tests: Improve some helper functions. 2015-03-16 15:08:38 +09:00
Qian Hong bed1525fa4 ws2_32: Improved error handling in gethostname when name length is insufficient. 2015-03-13 22:28:30 +09:00
Bruno Jesus 0415407404 ws2_32/tests: Add more select() tests related to OOB handling. 2015-03-13 00:28:15 +09:00
Alexandre Julliard 91fc10847e ws2_32: Use Win32 APIs for interlocked functions. 2015-03-11 14:21:10 +09:00
Bruno Jesus 18b3f4cadd ws2_32/tests: Test the behavior of reading data from an OOBINLINE'd socket. 2015-03-11 12:48:13 +09:00
Bruno Jesus b1fc62a213 ws2_32: Normalize socket tracing. 2015-03-11 12:46:27 +09:00
Michael Stefaniuc 58afc397cb ws2_32: Avoid using bitwise operations on BOOLs (PVS-Studio). 2015-03-10 21:36:24 +09:00
Bruno Jesus 3e676b205d ws2_32/tests: Add more select() tests. 2015-03-08 17:47:07 +09:00
Bruno Jesus 4ca53984e4 ws2_32/tests: Improve setup_connector_socket to allow non-blocking connect calls. 2015-03-08 17:47:05 +09:00
Bruno Jesus 9eaf92d62a ws2_32/test: Don't test unsupported IP_MULTICAST_TTL on NT4. 2015-03-08 17:47:03 +09:00
Bruno Jesus a65ae0ea57 ws2_32/tests: Fix a NT4 crash due to unsupported SIO_ADDRESS_LIST_QUERY. 2015-03-08 17:47:00 +09:00
Bruno Jesus 2522e205ec ws2_32/tests: Move second WSACleanup test elsewhere. 2015-03-08 17:46:56 +09:00
Alexandre Julliard 09cd7cf3e0 ws2_32: Set the completion event on the server side also for AcceptEx. 2015-03-07 15:17:05 +09:00
Sebastian Lackner 49cdebad4b ws2_32: Avoid kernel32 functions in system APC calls.
kernel32 functions might modify the last error, which should be avoided here.
2015-03-06 21:09:45 +09:00
Bruno Jesus bf36fb0216 ws2_32: Make closesocket() more robust. 2015-03-05 21:43:18 +09:00
Michael Stefaniuc bbe2c58261 ws2_32/tests: Actually test a return value (PVS-Studio). 2015-03-04 21:50:46 +09:00
Michael Stefaniuc 4c36ef1d4e ws2_32/tests: Remove an unused assignment (PVS-Studio). 2015-03-04 21:50:45 +09:00
Alexandre Julliard 0a241b0fcc ntdll: Allow specifying the user APC argument in the system APC callback. 2015-03-03 17:02:03 +09:00
Alexandre Julliard 4273b0d938 ws2_32: Don't queue a user APC when there is no callback function. 2015-03-03 17:01:48 +09:00
Alexandre Julliard e23233d791 ws2_32: Add a separate structure for async shutdowns.
Conflicts:
	dlls/ws2_32/socket.c
2015-03-03 16:53:04 +09:00
Alexandre Julliard 9fa69b5868 ws2_32: Add a common header to the async I/O structures. 2015-03-03 15:33:21 +09:00
Erich E. Hoover c15c7a4925 ws2_32/tests: Add an interactive test for interface change notifications. 2015-02-10 22:57:48 +09:00
Bruno Jesus 038399fcdd ws2_32: getaddrinfo must SetLastError on success or failure. 2015-01-20 11:11:43 +01:00
Bruno Jesus 632de943be ws2_32: Trace getpeername() result. 2015-01-15 11:33:32 +01:00
Bruno Jesus c0e4759d8d ws2_32: Prefer SetLastError over WSASetLastError. 2015-01-13 20:48:34 +01:00
Bruno Jesus ab1eee505b ws2_32: Ensure recv functions set last error to zero when they succeed. 2015-01-13 17:52:04 +01:00
Bruno Jesus 35a887acc5 ws2_32/tests: Show that send/recv functions set last error to zero on success. 2015-01-09 11:50:08 +01:00
Bruno Jesus ed281c743c ws2_32: Print the correct variable. 2015-01-09 11:49:46 +01:00
Francois Gouget b46a62843f ws2_32: Add a trailing '\n' to a TRACE() call. 2015-01-06 18:19:24 +01:00
Francois Gouget f2eaf730a5 ws2_32: Add a trailing '\n' to a FIXME() call. 2015-01-05 20:16:01 +01:00
Bruno Jesus 1c21aeeebc include: Add support for WS_ prefixed IPX names in wsnwlink.h. 2015-01-05 20:14:02 +01:00
Bruno Jesus fe127ac36c ws2_32: Better trace __WSAFDIsSet. 2015-01-05 20:12:08 +01:00
Bruno Jesus 9d9e1cc9ae ws2_32: Ensure an IPv6 is not recognized as IPv4 in WSAStringToAddress. 2014-12-31 11:37:18 +01:00
Bruno Jesus 1c4cb63036 ws2_32: Implement getsockopt(SO_BSP_STATE). 2014-12-09 20:05:58 +01:00
Bruno Jesus d7a8beb0f7 ws2_32: Filter unset bits when argument is smaller than 32 bits. 2014-12-05 20:47:40 +01:00
Bruno Jesus 14324fec97 ws2_32/tests: Add SO_BSP_STATE tests. 2014-12-05 20:47:30 +01:00
Sebastian Lackner d824b1ac3c ws2_32: Improve implementation of get_poll_results. 2014-12-02 15:04:39 +01:00
Joachim Priesner 6eba688f2c ws2_32: Use qsort() to order routes by metric in WS_get_local_ips. 2014-12-02 13:07:33 +01:00
Sebastian Lackner d57ccd54f8 ws2_32/tests: Fix several copy and paste errors. 2014-12-01 11:11:05 +01:00
Piotr Caban 6d5b7c7344 ws2_32/tests: Add more select tests. 2014-11-28 19:18:15 +01:00
Piotr Caban 459837ece4 ws2_32: Add support for overlapping fd_sets in select. 2014-11-28 19:18:10 +01:00
Sebastian Lackner 69cc90957c ws2_32/tests: Wait for thread termination before cleaning up winsock. 2014-11-20 22:34:48 +09:00
Bruno Jesus 344bc6d72b ws2_32: Add tests and implement inet_pton.
Special thanks to Erich Hoover.
2014-11-04 13:28:16 +09:00
Alistair Leslie-Hughes a5df09b404 ws2_32: Make SOCKET output consistent. 2014-10-08 10:18:55 +02:00
Henri Verbeet c0e49c5c40 ws2_32: Simplify some address calculations for SIO_ADDRESS_LIST_QUERY. 2014-10-07 20:22:04 +02:00
Henri Verbeet 32724def72 ws2_32: Return an error if "out_buff" is NULL for SIO_ADDRESS_LIST_QUERY. 2014-10-07 20:22:03 +02:00
Henri Verbeet b914a6461b ws2_32: Return WSAEINVAL if "out_size" is smaller than the minimum size for SIO_ADDRESS_LIST_QUERY. 2014-10-06 19:38:12 +02:00
Henri Verbeet 4e6ebd633a ws2_32: Return the needed buffer size for SIO_ADDRESS_LIST_QUERY. 2014-10-06 19:38:10 +02:00
Austin English f6dad55dab ws2_32: Don't assume AI_V4MAPPED is available. 2014-09-11 10:16:11 +02:00
Gerald Pfeifer 7432a8588c ws2_32: Define fill_control_message only when it's really used. 2014-08-21 18:02:24 +02:00
Bruno Jesus adde46f552 ws2_32: Improve WSAStartup/WSACleanup tracing. 2014-07-03 18:17:36 +02:00
Bruno Jesus 543314d449 ws2_32: Only declare IPX support if the required definitions are found. 2014-07-03 11:41:55 +02:00
Frédéric Delanoy 95ae71f3ab Assorted spelling/grammar fixes. 2014-07-01 13:09:13 +02:00
Bruno Jesus 6f47a9d9d8 ws2_32: Don't call WS_EnterSingleProtocol[A|W] on unsupported protocols (valgrind). 2014-06-16 09:39:42 +02:00
Bruno Jesus e3998e3988 ws2_32/tests: Wait for thread test before returning (valgrind). 2014-06-16 09:39:29 +02:00
Bruno Jesus 79d29e2347 ws2_32/tests: Initialize a test buffer (valgrind). 2014-06-12 18:05:21 +02:00
Bruno Jesus 1184fe90b2 ws2_32: Avoid memory allocation for simple receives. 2014-05-20 09:41:01 +02:00
Bruno Jesus 752219396d ws2_32: Avoid memory allocation for simple sends. 2014-05-20 09:40:52 +02:00
Bruno Jesus 25bc6de842 ws2_32: Take care of EINTR inside the helpers. 2014-05-19 09:51:54 +02:00
Bruno Jesus 443edfa1da ws2_32: Avoid magic numbers in shutdown() function. 2014-05-12 10:55:54 +02:00
Bruno Jesus 843ef11eb8 ws2_32: Return the correct error if SO_REUSEADDR is set in bind error. 2014-05-09 14:17:00 +02:00
Bruno Jesus 43241934c6 ws2_32: Avoid using WS_ prefix on unix sockaddr struct.
The address was already converted to unix in these situations, so it's
wrong to check against windows #defines.
2014-05-08 10:30:05 +02:00
Bruno Jesus eda14e611c ws2_32/tests: Test more the behavior of SO_REUSEADDR. 2014-05-07 10:25:58 +02:00
Bruno Jesus 3fe0a31d14 ws2_32: Convert the magic loopback address back to 127.0.0.1 in gethostbyaddr. 2014-04-18 10:52:09 +02:00
Bruno Jesus c33e7308ad ws2_32: Use the correct address family in gethostbyaddr. 2014-04-15 21:03:54 +02:00
Erich E. Hoover 5963d7f09c ws2_32: Ask the server to process unsupported WSAIoctl operations. 2014-03-28 17:46:04 +01:00
Thomas Faber 626040b1ac ws2_32: Avoid a variable-length array. 2014-03-25 19:01:14 +01:00
Austin English 171748da4d ws2_32: Skip some tests on broken ISPs. 2014-03-24 11:40:44 +01:00
Hans Leidekker 77f5f01bbb ws2_32/tests: Mark some test results on Windows 8 as broken. 2014-03-07 14:11:35 +01:00
Jacek Caban 35f164fac8 ws2_32: Improved WSAIoctl debug messages. 2014-03-06 16:25:38 +01:00
André Hentschel b05a3e999c ws2_32/tests: Get rid of the do_oob_send helper function. 2014-03-06 13:38:35 +01:00
André Hentschel ec7c5907f7 ws2_32/tests: Test OOB data more sequential by sending bidirectional. 2014-03-06 13:38:35 +01:00
Bruno Jesus de0c46fd52 ws2_32/tests: Add W2K error values as valid. 2014-02-22 08:41:34 -06:00
Bruno Jesus 5782bac2a0 ws2_32: Fix conversion of address in GetAddrInfoW. 2014-02-20 13:28:46 +01:00
Bruno Jesus da16d6b660 ws2_32: Fix edge case for getaddrinfo in BSD and OSX. 2014-02-17 11:28:20 +01:00
Bruno Jesus e5fba2d54c ws2_32: Add AI_NUMERICSERV support. 2014-02-13 10:43:58 +01:00
Bruno Jesus 3c64a7c4e2 ws2_32: Fix some parameters checking in AcceptEx. 2014-02-06 17:08:13 +01:00
Bruno Jesus 7a8d43043a ws2_32/tests: Fix AcceptEx tests related to address length. 2014-02-05 13:49:26 +01:00
Francois Gouget bff3d35e20 Assorted spelling fixes. 2014-01-30 15:00:34 +01:00
Alexandre Julliard cf0e96c6d0 configure: Rename substituted variables to a standard _CFLAGS and _LIBS format. 2014-01-30 14:51:33 +01:00
Bruno Jesus 84d91bb93d ws2_32/tests: Add missing closesocket calls (Coverity). 2014-01-27 14:13:53 +01:00
Bruno Jesus 4c6e04050f ws2_32: Return the correct address family in WSAStringToAddressA. 2014-01-27 14:13:52 +01:00
Francois Gouget e8e97f165d ws2_32/tests: Add a trailing '\n' to a win_skip() call. 2014-01-10 18:14:54 +01:00
Bruno Jesus 0d965c14e9 ws2_32/tests: Add broken for a WSALookupServiceBegin test in NT. 2014-01-09 12:12:52 +01:00
Bruno Jesus a1e2294006 ws2_32/tests: Show that the last WSACleanup must destroy sockets. 2014-01-07 10:47:13 +01:00
Bruno Jesus 7e4d075ec1 ws2_32/tests: Add some FIONREAD tests. 2014-01-07 10:47:06 +01:00
Marcus Meissner 54dc91547d ws2_32: handle error return from get_sock_fd (Coverity). 2014-01-06 20:47:00 +01:00
André Hentschel 57d2e8f3c3 ws2_32: Don't leak hostname (Coverity). 2014-01-06 17:16:55 +01:00
Bruno Jesus 281f69bccf ws2_32: Fix FreeBSD compiling issue on ipx address structure. 2014-01-06 16:59:15 +01:00
Bruno Jesus b461fa4468 ws2_32/tests: Add some WSALookupService[Begin|Next|End] tests. 2014-01-06 16:59:06 +01:00
Alexandre Julliard 99ef0d6ff0 makefiles: Get rid of the MAKE_TEST_RULES variable. 2014-01-02 12:13:16 +01:00
Alexandre Julliard 5e7416e5c8 makefiles: Get rid of the MAKE_DLL_RULES variable. 2014-01-02 12:08:18 +01:00
Bruno Jesus 719715c774 ws2_32: Cope with invalid hints in getaddrinfo/GetAddrInfoW. 2013-12-31 12:24:30 +01:00
Bruno Jesus 3eb39dc08e ws2_32: Add extended IPX protocol support. 2013-12-31 12:23:52 +01:00
Bruno Jesus 2d4adfc49e ws2_32: Use a helper function to set the IPX packet type. 2013-12-31 12:23:37 +01:00
Bruno Jesus b26ffddc8f ws2_32: Add a missing release_sock_fd. 2013-12-31 12:23:21 +01:00
Bruno Jesus ae728cfa27 ws2_32: Add support to check if an IPX socket is bound. 2013-12-30 16:05:17 +01:00
Bruno Jesus 38a3a574f3 ws2_32: Add support to print IPX socket address. 2013-12-30 16:05:14 +01:00
Bruno Jesus b8e9bbd4d0 ws2_32/tests: Fix some test message typos. 2013-12-27 20:28:16 +01:00
Bruno Jesus 658c2b5f28 ws2_32: Normalize IPX protocol names using the WS prefix. 2013-12-27 18:21:29 +01:00
Bruno Jesus fc5884c232 ws2_32: Do not convert EAI_xxx return in case of success. 2013-12-27 14:31:52 +01:00
Dmitry Timoshkov c66c14ddda ws2_32: Move the buffer used by inet_ntoa into the per-thread data. 2013-12-26 14:35:14 +01:00
Dmitry Timoshkov 3a56f9b956 ws2_32/tests: Add a test for inet_ntoa called from two threads. 2013-12-26 14:35:13 +01:00
Dmitry Timoshkov 7fd3d9d499 ws2_32: Add more traces. 2013-12-26 14:35:13 +01:00
Dmitry Timoshkov e25853c543 ws2_32: Add translation for AI_V4MAPPED. 2013-12-26 13:46:32 +01:00
Dmitry Timoshkov 83a1789c55 ws2_32: Add a workaround for broken versions of glibc which return EAI_SYSTEM and set errno to 0 instead returning of EAI_NONAME. 2013-12-26 13:44:59 +01:00
Frédéric Delanoy 5ba7f79bad Assorted spelling fixes. 2013-12-03 19:41:53 +01:00
André Hentschel f8c416b219 ws2_32/tests: Enable compilation with -D__WINESRC__. 2013-11-08 12:47:25 +01:00
Frédéric Delanoy 5274f855e3 ws2_32/tests: Use BOOL type where appropriate. 2013-10-09 10:08:29 +02:00
Frédéric Delanoy aedb86a46f ws2_32: Use BOOL type where appropriate. 2013-10-08 09:09:40 +02:00
Hans Leidekker 1422a56667 ws2_32: Always return the source address from WSAAccept. 2013-10-02 20:18:23 +02:00
Hans Leidekker 260119e682 ws2_32: Return an error from accept if the address buffer is too small. 2013-10-02 20:18:23 +02:00
Hans Leidekker 9530a06fed ws2_32: Add some tests for getpeername. 2013-10-02 20:18:23 +02:00
Hans Leidekker 14a092a336 ws2_32: Always clear res on error in getaddrinfo/GetAddrInfoW. 2013-10-02 20:18:23 +02:00
Hans Leidekker 59a1e6bff9 ws2_32: Avoid a crash with tracing on. 2013-10-02 20:18:23 +02:00
Michael Stefaniuc 0e681027a2 tests: Compile the tests by default with -D__WINESRC__. 2013-10-02 11:04:02 +02:00
Bruno Jesus adb8fb115a ws2_32: Implement WSASendMsg(). 2013-10-01 10:56:10 +02:00
Bruno Jesus d811747a14 ws2_32/tests: Fix an ok() call comment. 2013-09-30 11:28:50 +02:00
André Hentschel b605553e28 ws2_32/tests: Don't test function directly when reporting WSAGetLastError(). 2013-09-23 11:53:46 +02:00
Bruno Jesus d0009573ee ws2_32: Fix some parameters checking in AcceptEx. 2013-09-23 11:53:34 +02:00
Bruno Jesus cba19b9027 ws2_32: Add missing else to getsockopt(SO_ACCEPTCONN). 2013-09-23 11:51:03 +02:00
Bruno Jesus 68377494c6 ws2_32: ConnectEx should not work on unbound socket. 2013-09-20 11:26:48 +02:00
Bruno Jesus 5dcf368e1b ws2_32/tests: Mark WinNT result as broken. 2013-09-19 19:50:14 +02:00
Bruno Jesus e9bd764a7b ws2_32: Make getsockopt(SO_TYPE) convert the returned socket type. 2013-09-19 09:30:40 +02:00
Bruno Jesus 2034f51598 ws2_32: Do not allow socket creation if WSAStartup was not called. 2013-09-17 19:07:54 +02:00
Bruno Jesus 0298165bea ws2_32: Filter invalid socket parameters and return the appropriate error. 2013-09-17 19:07:49 +02:00
Bruno Jesus 35e54fa59b ws2_32: Auto detect the socket type and family based on the protocol. 2013-09-17 19:07:29 +02:00
Bruno Jesus 8e29fcddb9 ws2_32: Use the struct information when the parameters are zero in WSASocket. 2013-09-17 19:07:14 +02:00
Bruno Jesus 29aab5df59 ws2_32: Fix the error returned for denied SOCK_RAW attempts. 2013-09-16 11:47:19 +02:00
Bruno Jesus 5762067b20 ws2_32: Fix WSASocket return code for invalid combination of socket type and protocol. 2013-09-16 11:47:19 +02:00
Bruno Jesus 78ca87a00b ws2_32: Make WS_EnterSingleProtocol return a boolean. 2013-09-16 11:47:19 +02:00
Bruno Jesus 44ea5334ca ws2_32: Avoid magic numbers. 2013-09-16 11:47:19 +02:00
Bruno Jesus e0581b38a7 ws2_32: Advertise protocol entries as default. 2013-09-16 11:47:19 +02:00
Bruno Jesus 260250539d ws2_32/tests: Add more WSASocket tests. 2013-09-12 11:06:46 +02:00