Commit Graph

145 Commits

Author SHA1 Message Date
Jacek Caban 60f8ddbf9d server: Create ifchange async queue on socket fd.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-13 18:22:00 +02: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
Alexandre Julliard 438dae524d server: Avoid some compiler warnings when EWOULDBLOCK == EAGAIN.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-30 19:09:20 +09:00
Alexandre Julliard f55db7882d server: Add link_name and unlink_name object operations.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-04 21:07:19 +09:00
Erich E. Hoover dfa73ca626 server: Return STATUS_CANT_WAIT/WSAEWOULDBLOCK for non-overlapped SIO_ADDRESS_LIST_CHANGE requests on non-blocking sockets.
Signed-off-by: Erich E. Hoover <erich.e.hoover@wine-staging.com>
2015-10-02 18:11:32 +09:00
Alexandre Julliard ad53ffc9c0 server: Make async objects waitable. 2015-05-08 17:32:06 +09:00
Alexandre Julliard 83e3a9c9ba server: Allow cancelling async I/O for all object types. 2015-05-06 17:16:16 +09:00
Alexandre Julliard 837b39b202 server: Add read and write fd member functions.
Also rename no_flush() to no_fd_flush() for consistency.
2015-05-06 09:07:42 +09:00
Alexandre Julliard 6f2ed23c16 server: Retrieve ioctl data directly from the request. 2015-05-06 08:44:29 +09:00
Alexandre Julliard 5db44d15ac server: Copy completion information for accepted socket into the new file descriptor. 2015-03-17 00:19:55 +09:00
Erich E. Hoover 67c47e401b server: Implement the interface change notification object. 2015-02-10 22:57:36 +09:00
Erich E. Hoover b121f27b72 server: Add blocked support for SIO_ADDRESS_LIST_CHANGE ioctl(). 2015-02-10 22:45:02 +09:00
Erich E. Hoover 315de61bb2 server: Add socket-side support for the interface change notification object. 2015-02-10 22:45:00 +09:00
Erich E. Hoover 1239663fcb server: Implement socket-specific ioctl() routine. 2015-02-10 22:29:40 +09:00
Bruno Jesus 3591e5fd9f server: Store the time of the socket connection.
Based on a patch by Erich Hoover.
2014-11-12 20:07:55 +09:00
Bruno Jesus 8821967bd6 server: Add a missing socket protocol attribution.
The new socket has to inherit the information just like family and type.
2014-11-12 20:07:55 +09:00
Felix Janda e3faab267c server: Add missing includes of poll.h. 2014-06-12 18:05:08 +02:00
Sebastian Lackner 0b261bef76 server: Don't call close() on uninitialized memory in sock_check_pollhup. 2014-01-01 20:45:32 +01:00
Bruno Jesus c52eb21754 server: Fix a comment. 2013-09-23 11:50:56 +02:00
Dmitry Timoshkov e22f8d2fd8 server: Print the debug trace to stderr. 2013-09-04 11:32:53 +02:00
Bruno Jesus ec49a574de server: Add a request to get socket information. 2013-09-02 19:51:16 +02:00
Bruno Jesus f5023dda2d server: Store the protocol while creating the socket. 2013-09-02 19:48:08 +02:00
Alexandre Julliard 39644bb309 server: Pass a wait queue entry to the signaled/satisfied object functions. 2013-08-27 23:48:36 +02:00
Qian Hong 31b9455b7e server: Automatically sets a socket to non-blocking mode when WSAAsyncSelect or WSAEventSelect is called even when lEvent is zero. 2013-05-28 19:43:48 +02:00
Alexandre Julliard 9fdf7bc771 server: Use socklen_t where appropriate. 2013-03-06 13:40:58 +01:00
Marcus Meissner 3199fe147d server: Removed duplicate close of acceptfd (Coverity). 2012-10-10 10:35:38 +02:00
Francois Gouget c7cb3e6cb2 configure: Use errno.h instead of the non-standard sys/errno.h header. 2011-12-15 17:46:38 +01:00
Marcus Meissner 27c9a61e15 server: Remove superflous NULL check (Coverity). 2011-06-14 15:27:13 +02:00
Mike Kaplinskiy f58c709b5f server: Fix connect failures on newer kernels. 2011-01-24 14:43:28 +01:00
Francois Gouget c4c03180b0 server: Make sock_check_pollhup() more reliable on Solaris. 2010-11-29 19:43:35 +01:00
Gerald Pfeifer 87624c2c21 server: Remove pollev from set_socket_event. 2010-09-06 16:13:22 +02:00
Mike Kaplinskiy 333313aa2b server: Allow queuing async reads on listening sockets. 2010-08-31 14:23:49 +02:00
Mike Kaplinskiy ae5ad61fa8 server: Add accept_into_socket to accept into an initialized socket. 2010-08-31 14:23:49 +02:00
Mike Kaplinskiy 92b83ddffb server: Don't cache sockets until they are pollable. 2010-08-31 14:23:49 +02:00
Eric Pouech c1d35ba540 server: Fix method name in comments for fd_ops. 2010-08-30 17:51:05 +02:00
Alexandre Julliard a2ca2ebd50 server: Change the removable fd flag to a cacheable flag to make it possible for fd users to set it dynamically. 2010-08-23 17:09:45 +02:00
Mike Kaplinskiy fae0b6fa63 ws2_32: Don't set FD_READ/FD_WRITE before the connection is complete. 2010-08-03 12:00:48 +02:00
Mike Kaplinskiy a6203f8b53 server: Fix some comments.
Apparently windows reports only currently valid events for WSAEnumNetworkEvents.
2010-07-28 16:28:27 +02:00
Mike Kaplinskiy 93db86a7e0 server: Don't delay events, we simply shouldn't send them in the first place. 2010-07-28 16:28:27 +02:00
Mike Kaplinskiy 0b251c08f2 server: Consume events triggered. 2010-07-28 16:28:26 +02:00
Mike Kaplinskiy 8d9fbe59b3 server: Forward the correct error to asyncs. 2010-07-20 14:40:31 +02:00
Mike Kaplinskiy be230adbb7 server: In case of hangup/error, wake up all asyncs that can no longer be completed. 2010-07-20 14:40:31 +02:00
Mike Kaplinskiy 394a142237 server: Propagate error from recv. 2010-07-20 14:40:31 +02:00
Mike Kaplinskiy 75c7c63886 server: Move signaling FD_* events to a separate function. 2010-07-20 14:40:31 +02:00
Hans Leidekker 0a4984280f server: Map EHOSTUNREACH to STATUS_HOST_UNREACHABLE. 2010-05-25 13:29:07 +02:00
Mike Kaplinskiy ee5ee5c538 server: Move async activation into separate function. 2010-05-20 16:48:37 +02:00
Mike Kaplinskiy ac12c67f40 server: Don't poll for events when there are async operations queued. 2010-05-19 16:57:59 +02:00
Mike Kaplinskiy 42debac149 server: Move socket async activation to sock_poll_event. 2010-05-17 14:41:33 +02:00
Mike Kaplinskiy 4f9e09ea57 server: Get rid of sock_try_event.
We *might* need to ignore POLLERR messages for UDP sockets, as the
condition is actually temporary and sock_try_event was hiding this.
2010-05-14 11:47:26 +02:00
Mike Kaplinskiy d03fe9d4ec server: Always treat POLLHUP as a hangup, just special case checking TCP sockets. 2010-05-14 11:45:44 +02:00