Commit Graph

261 Commits

Author SHA1 Message Date
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
Kai Blin 804bba8d4c ws2_32: Downgrade SO_REUSEADDR fixme to a trace. 2006-12-07 20:58:04 +01:00
Kai Blin 829e6f14aa ws2_32: Rewrite setsockopt to be more readable. 2006-12-05 16:49:41 +01:00
Damjan Jovanovic 526e1353e6 ws2_32: Added tests for closesocket cancelling pending I/O operations. 2006-12-04 18:02:17 +01:00
Kai Blin 2a4df56548 ws2_32: Rewrite getsockopt to make it more readable. 2006-12-04 13:43:10 +01:00
Kai Blin e521ee2cee ws2_32: Implement SO_EXCLUSIVEADDRUSE for setsockopt. 2006-11-30 15:23:16 +01:00
Kai Blin 516a575a86 ws2_32: SO_DONTROUTE is ignored on windows, fix comment and downgrade FIXME to TRACE. 2006-11-30 13:26:45 +01:00
Kai Blin 7e6b7d21b9 ws2_32: Implement SO_GET_MAX_MSG_SIZE for getsockopt. 2006-11-29 12:36:35 +01:00
Kai Blin 4534145889 ws2_32: Add WS_SIO_ADDRESS_LIST_QUERY stub to make native dplay error output more readable. 2006-11-28 12:13:53 +01:00
Alexandre Julliard 167b32cc4b winsock: Add WS_ prefix on WSAIoctl constants. 2006-11-27 18:48:58 +01:00
Andrew Talbot d9cdd23411 ws2_32: Cast-qual warnings fix. 2006-11-24 12:56:26 +01:00
Francois Gouget 30e44c85c8 Assorted spelling fixes. 2006-11-07 15:25:24 +01:00
Alexandre Julliard 0082973d93 ws2_32: Convert WS_select to use poll() instead of select(). Also fixes an fd leak. 2006-11-06 12:28:53 +01:00
Alexandre Julliard 2765df9f23 ws2_32: Don't store the socket file descriptor in the async structure, retrieve it as needed. 2006-11-03 12:03:14 +01:00
Alexandre Julliard e958dc2e9d ws2_32: Win64 printf format fixes. 2006-10-12 14:53:44 +02:00
Alexandre Julliard 9e5fadab6d winsock: Add a WS_ prefix to the BSD types. 2006-10-12 13:45:39 +02:00
Nicolas Delcros eda8b9550b winsock: Add mapping for SO_ACCEPTCONN. 2006-10-12 11:32:53 +02:00
Michael Stefaniuc a279570d15 ws2_32/tests: Win64 printf format warning fixes. 2006-10-09 12:55:39 +02:00
Alexandre Julliard 85230942e8 ws2_32: Avoid retrieving the fd twice in WSAIoctl. 2006-10-03 11:46:11 +02:00
Marcus Meissner 971d5f3f89 ws2_32: Implemented FIONBIO and FIONREAD in WSAIoctl. 2006-10-03 11:45:30 +02:00
Dmitry Timoshkov 0d5bcdaeda ws2_32: Add a comment to ioctlsocket about 'bogus' ioctl 0x667e. 2006-10-02 12:33:55 +02:00
Dmitry Timoshkov 888c930f2d ws2_32: Use a symbolic name instead of hand-made value. 2006-10-02 12:32:46 +02:00
Michael Stefaniuc 85ce5117c5 Add a WINE_NO_LONG_INT define to many makefiles to ease the transition of DWORD/LONG/ULONG from long to int. 2006-09-29 16:08:30 +02:00
Alexandre Julliard 32ab895e46 makefiles: Generate the dependencies line to avoid some code duplication. 2006-09-14 09:38:16 +02:00
Francois Gouget 06f9532dda Assorted spelling fixes. 2006-09-08 11:04:53 +02:00