Commit Graph

285 Commits

Author SHA1 Message Date
Juan Lang 90c52c0180 ws2_32: Add debug support for IPv6 addresses. 2009-08-04 12:49:56 +02:00
Rein Klazes d8f962e69c ws2_32: Do not make the unix file descriptor blocking. Too many places in the socket code assume it is not. 2009-07-24 11:51:35 +02:00
Mike Kaplinskiy 7b683a9008 ws2_32/tests: Fix the last failures on NT4. 2009-07-22 11:08:49 +02:00
Mike Kaplinskiy 83d2108126 ws2_32/tests: Fix test failures on NT4/x86_64. 2009-07-20 13:35:43 +02:00
Mike Kaplinskiy 4acc8729c4 ws2_32/tests: Test closing listener during pending AcceptEx. 2009-07-20 13:35:37 +02:00
Mike Kaplinskiy 98bc97f770 ws2_32/tests: Test AcceptEx during pending AcceptEx call. 2009-07-20 13:35:34 +02:00
Marcus Meissner f8600c706d ws2_32: Fixed buffer size to MultiByteToWideChar. 2009-07-20 12:20:22 +02:00
Jeff Latimer 4a8e36548d ws2_32: IPv6 functionality for WSAAddressToStringW. 2009-07-17 13:33:41 +02:00
Jeff Latimer c620ec8f72 ws2_32/tests: IPv6 tests for WSAAddressToStringW. 2009-07-17 13:32:56 +02:00
Juan Lang 778a1d85c4 ws2_32: Make sure sockaddr is big enough when formatting an IPv6 address. 2009-07-17 11:14:48 +02:00
Juan Lang a9a1cd269c ws2_32: Remove an unnecessary cast. 2009-07-17 11:14:43 +02:00
Mike Kaplinskiy 1dd1ea2e17 ws2/tests: Test AcceptEx with a deferred socket. 2009-07-14 16:28:59 +02:00
Damjan Jovanovic 26b0fad163 ws2_32: Test AcceptEx early disconnects and invalid parameters. 2009-07-10 12:12:04 +02:00
Alexandre Julliard 48656f5596 ws2_32: Check buffers before recvmsg() to trigger write watches. 2009-07-09 15:21:30 +02:00
Paul Vriens b7e1473311 ws2_32/tests: Fix a test failure on NT4. 2009-07-08 20:13:16 +02:00
Damjan Jovanovic 0066319b2d ws2_32: Test AcceptEx short reads. 2009-07-07 11:01:06 +02:00
Damjan Jovanovic 71f7da2d3e ws2_32: Add some AcceptEx tests. 2009-07-06 14:35:26 +02:00
Austin English 3cf5eb6d96 ws2_32/tests: Add initial tests for WSAStartup. 2009-05-04 12:52:40 +02:00
Alexandre Julliard 445567ea95 ws2_32: Use SIZE_T instead of size_t for inet_ntop argument. 2009-04-29 15:52:29 +02:00
Jeff Latimer 2fa64f52e7 ws2_32: IPv6 functionality for WSAAddressToStringA. 2009-04-29 15:50:22 +02:00
Jeff Latimer 7d78bf4b1c ws2_32/tests: IPv6 tests for WSAAddressToStringA. 2009-04-29 15:49:41 +02:00
Paul Vriens ffd855d214 ws2_32/tests: Run tests again on several platforms due to missing functions. 2009-04-28 11:58:24 +02:00
Jeff Latimer 4d4819d8c4 ws2_32: Make inet_ntop conform to msdn definition. 2009-04-27 14:29:28 +02:00
Jeff Latimer 0cdd0d80ee ws2_32/tests: Add tests for Inet_Ntop and inet_ntoa. 2009-04-27 14:29:08 +02:00
Hans Leidekker fea6d0a764 ws2_32: Implement GetAddrInfoW and FreeAddrInfoW. 2009-04-27 13:22:54 +02:00
Alexandre Julliard d341cca616 ws2_32/tests: Avoid sizeof in traces. 2009-04-22 16:56:37 +02:00
Jeff Latimer eab59e84ac ws2_32: WSAAddressToStringW should return length of unicode address string should and include the trailing null. 2009-04-20 17:40:18 +02:00
Jeff Latimer bf40710516 ws2_32: WSAAddressToStringA should return length of ANSI address string and should include the trailing null. 2009-04-20 17:39:56 +02:00
Michael Stefaniuc 0847e7d826 ws2_32: Use better types for some variables. 2009-04-20 14:12:32 +02:00
Alexandre Julliard 65e71259df ws2_32/tests: Don't use socklen_t. 2009-03-31 12:13:15 +02:00
Alexandre Julliard a8a2ca72bd ws2_32/tests: Fix a test failure on WinME. 2009-01-25 17:54:49 +01:00
Alexandre Julliard a46441bd02 ws2_32: Fix an error return value in bind(). 2009-01-08 17:29:31 +01:00
Alexandre Julliard bc9df953fc ws2_32/tests: Avoid printing pointer differences in traces. 2009-01-08 13:02:54 +01:00
Alexandre Julliard 6db201080f server: Make the various async I/O parameters client_ptr_t instead of void pointers. 2008-12-30 21:09:41 +01:00
Alexandre Julliard f507ccbf52 server: Specify the user APC to call only once the system APC has executed. 2008-12-30 20:51:55 +01:00
Francois Gouget da1a352972 configure: Fix the linux/ipx.h check. 2008-12-29 11:35:58 +01:00
Alexandre Julliard a7b3efde0e server: Store the async handle inside the async_data_t structure. 2008-12-26 12:33:21 +01:00
Alexandre Julliard bc85fb4cd3 ws2_32: Added implementation for inet_ntop. 2008-12-22 19:40:08 +01:00
Alexandre Julliard f6fa72d770 server: Make async I/O transfer sizes always 32-bit. 2008-12-15 13:30:25 +01:00
Andrew Talbot 8ee1634f41 ws2_32: Sign-compare warnings fix. 2008-12-11 14:32:06 +01:00
Hans Leidekker c58541e20a ws2_32: Implement WSAIoctl(SIO_KEEPALIVE_VALS).
Based on a patch by Philippe Rétornaz.
2008-12-09 12:46:52 +01:00
Alexandre Julliard 7fdadbb377 server: Add functions for conversions between server user handles and pointer-style handles. 2008-12-08 16:58:20 +01:00
Alexandre Julliard d1b3d484f7 server: Add functions for conversions between server object handles and pointer-style handles. 2008-12-08 16:05:17 +01:00
Michael Stefaniuc e948b2bf7e ws2_32/tests: Remove some superfluous casts. 2008-12-04 12:08:30 +01:00
Francois Gouget 792e672822 ws2_32: Fix the checks for AQ_WIN16. 2008-12-01 12:57:29 +01:00
Jeff Zaroyko 75e511f3a7 ws2_32: Test WSAAccept optional callback parameter before trying to use it. 2008-11-06 11:10:18 +01:00
Michael Stefaniuc 4f199a10ad Remove the remaining casts of NULL. 2008-11-03 13:42:09 +01:00
Aric Stewart 6b4d22ca2c ws2_32: Only set the overlapped hEvent if it exists. 2008-10-29 13:43:44 +01:00
Alexandre Julliard fe7c5d86e7 ws2_32: Allow arbitrary-sized iovecs again in WSASendTo and WSARecvFrom. 2008-10-09 12:57:33 +02:00
Francois Gouget 96e15460e1 ws2_32/tests: Fix a race in sock.c:test_write_events().
Stop draining the socket to make sure we will be able to fill the send 
buffer and trigger a short write.
2008-09-12 11:40:10 +02:00
Kai Blin 4b4109a647 ws2_32: Win98 closesocket() does not wake up select. 2008-09-11 14:38:21 +02:00
Kai Blin 93f1d48743 ws2_32: Win NT4 does not zero the sockaddr_in structure on getsockname.
All other versions of windows do, and this makes native dplay traces
much more readable, which is why Wine implements this as well. Mark
NT4 as broken, to make sure Wine doesn't regress.
2008-09-11 14:38:14 +02:00
Kai Blin 6f8d1aa8c2 ws2_32: Fix the SO_REUSEADDR tests to work on Win2k3 and newer.
It seems that with Win2k3, the meaning of SO_REUSEADDR got closer to
BSD semantics. This is nice, as it allows us to finally work like some
version of Windows here.
2008-09-10 11:20:28 +02:00
Jeff Zaroyko 15978ddc01 ws2_32: ioctlsocket should try to check if argp is valid. 2008-09-10 11:07:51 +02:00
Paul Vriens c8aba692af ws2_32/tests: Remove redundant NULL check before HeapFree. 2008-09-09 12:32:25 +02:00
Damjan Jovanovic b904dd783c ws2_32: Only enable FD_WRITE on short sends. 2008-09-08 14:09:16 +02:00
Paul Vriens ea17a9192c ws2_32/tests: Use CreateEventA for win9x. 2008-09-05 11:20:54 +02:00
Juan Lang 8c44e25693 ws2_32: Delay import iphlpapi. 2008-08-05 14:09:36 +02:00
Daniel Santos b54b282a4f ws2_32: WSASendTo() should clear last error on success. 2008-07-18 12:30:31 +02:00
Andrew Talbot a42a61eee1 ws2_32: Remove unneeded address-of operators from array names. 2008-07-14 11:50:48 +02:00
Kai Blin 1d77d2a826 ws2_32: Prevent segfault in trace for NULL AddressString. 2008-07-04 19:35:41 +02:00
Marcus Meissner ebe7739987 ws2_32/tests: Initialize buffer to avoid valgrind warning. 2008-06-23 14:09:57 +02:00
Marcus Meissner fb140649f4 ws2_32/tests: Initialize memory to send. 2008-06-21 11:54:55 +02:00
Jeff Zaroyko 30e6b81dd1 ws2_32: Ignore lpFrom for connected sockets.
If the the socket is connected and lpFrom is not NULL, Linux will set
msg_namelen to zero and ignore msg_name in recvfrom so don't try try
to update lpFrom.
2008-06-21 11:36:15 +02:00
Albert Lee b4057a6f39 ws2_32: WS_getaddrinfo TRACE message can crash Wine. 2008-06-18 15:21:48 +02:00
Kai Blin 36d6310599 ws2_32: Change back magic 127.12.34.56 to loopback on connect(). 2008-05-28 11:31:22 +02:00
Paul Vriens 9d566032bb ws2_32/tests: Fix crash on win98. 2008-05-28 11:31:18 +02:00
Kai Blin cabb350f2f ws2_32: Add support for FROM_PROTOCOL_INFO to WSASocket(). 2008-05-26 18:00:18 +02:00
Andrew Talbot 0c1407008d ws2_32: Remove unused function. 2008-05-22 11:28:59 +02:00
Kai Blin d88ee55e68 ws2_32: Test for invalid hostnames again. 2008-05-19 20:20:00 +02:00
Dan Kegel 95beaa21b8 ws2_32/tests: Cannot reliably detect bad hostnames in "modern" internet. 2008-05-14 13:36:38 +02:00
Francois Gouget 42a61d7ed7 Assorted spelling fixes. 2008-05-06 16:10:20 +02:00
Michael Stefaniuc af1986d6cc ws2_32: Fix test output string to match the test. 2008-05-06 11:24:58 +02:00
Kai Blin 6b007698d2 ws2_32: On Win98, SO_MAX_MSG_SIZE is 65527, not 65507. 2008-05-05 21:02:12 +02:00
Alexandre Julliard 4c4544910e ws2_32/tests: Fix the gethostname prototype. 2008-04-29 20:17:50 +02:00
Alexandre Julliard 6121af50d6 ws2_32: Don't name a parameter errno. 2008-04-29 20:17:41 +02:00
Kai Blin c0a3ac5006 ws2_32: Handle gethostbyname call failure, add tests. 2008-04-28 14:33:03 +02:00
Kai Blin 1bcbe8651a ws2_32: Work around the host name resolving to 127.x.x.x when using that for binding. 2008-04-24 22:08:54 +02:00
Andrew Talbot 15db05929a ws2_32: Make function declarations match definitions. 2008-04-01 11:26:24 +02:00
Andrew Talbot a839455bb0 ws2_32: Assign to structs instead of using memcpy. 2008-03-24 20:41:50 +01:00
Francois Gouget f5ea0fd2e4 ws2_32: s/#if/#ifdef/ so it still works if HAVE_XXX is not defined. 2008-03-06 17:38:59 +01:00
Rob Shearman 48000893f9 makefiles: Simplify the use of the IMPORTLIB variable in the DLL makefiles.
Only specify the root to keep platform-specifics out of the individual 
DLL makefiles.
2008-03-04 20:55:01 +01:00
James Hawkins 7b56757cf6 janitorial: Remove links to any microsoft site. 2008-03-01 12:17:13 +01:00
Andrew Talbot e27ede4070 ws2_32: Remove unneeded casts. 2008-02-08 11:02:45 +01:00
Rob Shearman dfce00677d ws2_32: Add a FIXME for WS_SIO_GET_EXTENSION_FUNCTION_POINTER in WSAIoctl. 2008-02-05 12:19:37 +01:00
Francois Gouget 44b52b128c Assorted spelling fixes. 2008-01-16 12:48:29 +01:00
Austin English 79c0bc28ff More spelling fixes. 2008-01-04 12:55:45 +01:00
Gerald Pfeifer 257f519eb5 ws2_32: Remove two noop checks. 2008-01-03 11:53:38 +01:00
Alexander Dorofeyev d5a09fdda7 ws2_32: Fix timeout check. 2007-12-26 14:03:41 +01:00
Johannes Stezenbach ca4d35fe48 ws2_32: Set *res = NULL for error return from WS_getaddrinfo(). 2007-12-23 14:17:12 +01:00
Kirill K. Smirnov 01380b0554 ws2_32: Fix flags conversion in getnameinfo() function. 2007-12-18 14:23:23 +01:00
Andrey Turkin 7a9210fa85 server: Pass Information field from async I/O APCs. 2007-11-15 14:24:50 +01:00
Andrey Turkin 27cb7c7274 ws2_32: Make certain winsock functions generate i/o completion messages. 2007-11-15 14:23:23 +01:00
Andrey Turkin c702a91a3c server: Allow async i/o operations to send completion messages. 2007-11-15 14:20:29 +01:00
Gerald Pfeifer e3b5610825 ws2_32/tests: Fix error checking. 2007-11-14 11:59:42 +01:00
Kai Blin d35c13c621 ws2_32: Cope with buggy apps passing setsockopt optval as a value instead of a pointer. 2007-11-12 13:03:57 +01:00
Kai Blin 58b030c270 ws2_32: Map SO_REUSEADDR.
BSD socket SO_REUSEADDR is not a complete match, but features like
"allow binding to a port immediately after closing it" seem to be compatible.
2007-11-05 13:24:37 +01:00
Aric Stewart 6c824e8b89 ws2_32: Return proper WSAENOBUFS error when enuming protocols. 2007-10-19 12:15:43 +02:00
Juan Lang 17248108d4 ws2_32: Fix broadcast address calculation. 2007-10-15 12:10:32 +02:00
Damjan Jovanovic 5591c969a6 ws2_32: Silently ignore WS_IP_DONTFRAGMENT. 2007-10-04 12:03:41 +02:00
Philip Nilsson 65dbd2b114 ws2_32/tests: Add a testcase for binding with IPv6 and IPv4 on the same port. 2007-09-25 13:51:47 +02:00
Philip Nilsson 1399a6eaf8 ws2_32: Set IPV6_V6ONLY when required to be compatible with Windows. 2007-09-25 13:51:40 +02:00
Tijl Coosemans 1233b4b27b ws2_32/tests: Don't wait for FD_CONNECT event when non-blocking connect() was successful. 2007-09-19 11:41:49 +02:00
Aric Stewart d35857dfbf ws2_32: Initialize the address to 0 in ws_sockaddr_ws2u. 2007-07-25 13:00:41 +02:00
Damjan Jovanovic 827644ad71 ws2_32: Sending 0 bytes shouldn't cause an infinite loop. 2007-07-24 11:50:08 +02:00
Damjan Jovanovic 15428534d8 ws2_32: Update WSASendTo's iovec properly. 2007-07-16 13:38:19 +02:00
Ben Hodgetts f438e524e7 ws2_32: Don't tell users to run Wine as root when sockets not creatable. 2007-07-03 12:29:13 +02:00
Kai Blin fd133237b0 ws2_32: Handle IPv6 in WSAStringToAddress. 2007-07-02 13:35:41 +02:00
Kai Blin d89f2b4810 ws2_32: Return WSAEINVAL for unhandled address families in WSAStringToAddress.
Prepare for IPv6 support.
2007-06-29 13:47:30 +02:00
Alexandre Julliard 0bd2b548da ws2_32: Don't print traces from async I/O callbacks. 2007-06-29 13:40:48 +02:00
Damjan Jovanovic 1cf9436efe ws2_32: getsockname should fail on unbound socket. 2007-06-15 12:40:20 +02:00
Kai Blin f500591f38 ws2_32: Add mapping for STATUS_OBJECT_TYPE_MISMATCH to WSAENOTSOCK. 2007-06-06 12:10:01 +02:00
Alexandre Julliard 597dac7890 ws2_32: Rewrite WSAGetOverlappedResult for the new async I/O behavior. 2007-06-04 23:03:20 +02:00
Alexandre Julliard 7c6bc78b90 ntdll: Get rid of the num_async_io counter in the TEB. 2007-06-04 18:17:16 +02:00
Alexandre Julliard e32252efae ws2_32: Queue a proper user APC also on immediate success in WSARecvFrom/WSASendTo. 2007-06-04 17:44:24 +02:00
Alexandre Julliard 8992f89f27 server: Remove the extra apc_arg parameter now that user APCs all require the same arg as the kernel APC. 2007-06-04 15:20:49 +02:00
Francois Gouget cfbd3384e2 ws2_32: Improve the prototypes Win64 compatibility by replacing long with LONG. 2007-06-04 12:49:22 +02:00
Alexandre Julliard f2febca8f6 ws2_32: Simplify the async shutdown handling, and remove a bunch of no longer used code. 2007-06-03 11:58:30 +02:00
Alexandre Julliard 40b4072884 ws2_32: Call the I/O completion routine as a user APC. 2007-06-03 11:58:30 +02:00
Alexandre Julliard 7bee1d3583 ws2_32: Reimplement WSASendTo along the lines of NtWriteFile. 2007-06-03 11:58:29 +02:00
Damjan Jovanovic b23d90a543 ws2_32: gethostbyname("") should work. 2007-06-01 12:40:40 +02:00
Alexandre Julliard b281d3f8d8 ws2_32: Don't modify last error in async I/O callback. 2007-06-01 11:15:33 +02:00
Alexandre Julliard a1192b03d1 ws2_32: Re-enable FD_READ also when returning EWOULDBLOCK from WSARecvFrom(). 2007-06-01 11:14:44 +02:00
Alexandre Julliard 9db8574540 ws2_32: Allocate iovec buffers statically using MSG_MAXIOVLEN. 2007-05-31 12:15:08 +02:00
Alexandre Julliard 442bd1b5fc ws2_32: Store the local iosb in the ws2_async structure to avoid a memory allocation. 2007-05-31 12:07:14 +02:00
Alexandre Julliard 6759e1c286 ws2_32: Reimplement WSARecvFrom along the lines of NtReadFile. 2007-05-31 11:55:38 +02:00
Alexandre Julliard 42e560d001 ws2_32: Avoid memory allocations for sockaddr conversion. 2007-05-30 20:11:58 +02:00
Kai Blin 29b3a16306 ws2_32: Make WS2_send trace more readble. 2007-05-29 11:54:29 +02:00
Andrew Talbot 9d59c0300c ws2_32: Exclude unused headers. 2007-05-29 11:53:53 +02:00
Dmitry Timoshkov 3c9e7a7f33 wine: Switch to using 'long' for INT_PTR type for 64-bit compatibility. 2007-05-25 20:37:56 +02:00
Damjan Jovanovic 8178f8fc88 ws2_32: Simplify some socket tests by adding a function that generates a pair of connected sockets. 2007-05-25 20:20:58 +02:00
Paul Vriens f570fd314c ws2_32/tests: Add required parameter to CreateThread (for Win9x and WinME). 2007-04-25 12:44:09 +02:00
Michael Stefaniuc 57d2002351 ws2_32/tests: Remove redundant NULL check before HeapFree(). 2007-04-11 11:20:40 +02:00
Alexandre Julliard d85121f199 ntdll: Store the file access and options in the fd cache, and get rid of the dynamic flags.
This avoids server round-trips for all file I/O.
2007-04-10 22:32:46 +02:00
Alexandre Julliard 72bff2e445 server: Add support for restarting an async I/O when the client side couldn't finish it right away. 2007-04-10 17:07:27 +02:00
Alexandre Julliard 2a9dfe242b ws2_32: Don't access the IO_STATUS_BLOCK until the I/O operation is finished. 2007-04-05 11:29:30 +02:00
Alexandre Julliard 589ce2bb8d server: Always return STATUS_PENDING when an async I/O operation has been queued. 2007-03-26 19:13:21 +02:00
Andrew Talbot a85b3c9f71 ws2_32: Replace inline static with static inline. 2007-03-26 12:20:44 +02:00
Damjan Jovanovic e39dca6af6 ws2_32: WSASendTo should always re-enable the FD_WRITE event. 2007-03-22 11:28:16 +01:00
Alexandre Julliard 2b6d1fa59b ws2_32: Move the signalling of the completion event to the server. 2007-03-21 14:29:35 +01:00
Alexandre Julliard 111610c45e server: Add an async_data_t structure to store parameters for async I/O requests. 2007-03-20 20:21:12 +01:00
Damjan Jovanovic 665e8a5e64 ws2_32: In some cases send should block until the entire buffer is sent. 2007-03-20 12:39:17 +01:00
Francois Gouget 66c37f5184 ws2_32: Fix an int/long mismatch in a trace. 2007-03-08 22:16:57 +01:00
Francois Gouget 7d5883d44b ws2_32: Replace a few -1 literals with SOCKET_ERROR.
Do a small tweak in WS2_send() so it looks more like WS2_recv().
2007-03-08 22:16:53 +01:00
Hans Leidekker bde4e36208 ws2_32: Handle NULL argument in inet_addr. 2007-02-26 13:37:59 +01:00
Francois Gouget 536e738552 Assorted spelling fixes. 2007-02-14 21:03:57 +01:00
Vitaliy Margolen e437a0c302 ws2_32: Fix trace for WS_setsockopt to look closer to WS_getsockopt. 2007-01-18 11:59:25 +01:00
Francois Gouget f54caadc49 ws2_32/tests: Use '%d' to print GetLastError(). 2007-01-04 11:26:25 +01:00
Kai Blin 6055c667e9 ws2_32: ws_sockaddr_u2ws should zero the sockaddr_in.sin_zero field. 2006-12-20 15:47:31 +01:00
Hans Leidekker 84f0a03556 ws2_32: Implement the SIO_ADDRESS_LIST_QUERY ioctl. 2006-12-19 12:39:02 +01:00