231 Commits

Author SHA1 Message Date
Bert Belder
01c82b9364 error: prefix internal APIs with 'err_' rather than 'we_' 2017-09-27 17:13:59 +02:00
Bert Belder
347ad5399e error: shrink the error-to-errno map 2017-09-27 17:13:54 +02:00
Bert Belder
aad7c9151e afd: use RtlNtStatusToDosError to map NTSTATUS to error code 2017-09-27 17:05:34 +02:00
Bert Belder
8188c3df79 ntstatus: remove some unused definitions 2017-09-26 21:20:03 +02:00
Bert Belder
20e76abf32 nt: declarators -> attributes 2017-09-26 21:18:42 +02:00
Bert Belder
e3dda41f53 util: consistent naming 2017-09-26 21:14:44 +02:00
Bert Belder
d99e748ef8 sock: remove ep_sock_from_overlapped() internal API 2017-09-26 21:12:28 +02:00
Bert Belder
9402a42a4d all-in-one: rebuild 2017-09-26 02:15:31 +02:00
Bert Belder
d4d296b53c build: remove rogue definition of HAVE_CONFIG_H 2017-09-26 02:14:53 +02:00
Bert Belder
ba8823ad87 init: make global initialization thread-safe 2017-09-26 02:14:53 +02:00
Bert Belder
3642064c17 util: reorder the flavors of container_of 2017-09-26 02:14:53 +02:00
Bert Belder
809a6d84bf sock: remove ep_sock_find_in_tree() internal api 2017-09-26 02:14:53 +02:00
Bert Belder
3151f51417 port: improve _ep_port_feed_events() readability 2017-09-26 02:14:53 +02:00
Bert Belder
9a3952cdfb port: bump max completions that may be received from an IOCP port 2017-09-26 02:14:53 +02:00
Bert Belder
7b43e9c9f0 tree: don't set error on failure, this is the caller's responsibility 2017-09-25 20:35:48 +02:00
Bert Belder
562bf271df src: name header guard #defines consistently 2017-09-25 20:35:47 +02:00
Bert Belder
b61fd61008 src: rename epoll-socket.* to sock.* 2017-09-25 20:35:47 +02:00
Bert Belder
fa10bfc829 api: move epoll_xxx functions to api.c 2017-09-25 20:35:41 +02:00
Bert Belder
4ea40313be epoll: epoll_create(1) to match linux API more closely 2017-09-25 19:54:20 +02:00
Bert Belder
929ea10ebd port: immediately update poll set when other threads are polling 2017-09-25 19:42:01 +02:00
Bert Belder
729fa3c733 port: move IOCP port creation to ep_port_new() 2017-09-25 19:32:13 +02:00
Bert Belder
a6c2c49071 port: make ep_port_ctl() thread-safe 2017-09-25 19:26:40 +02:00
Bert Belder
851a5d7346 port: move ep_port_ctl() to port.c 2017-09-25 19:25:30 +02:00
Bert Belder
e37f4b2ccb port: make ep_port_wait() thread-safe 2017-09-25 19:18:13 +02:00
Bert Belder
d3a69678cf port: move ep_port_wait() to port.c 2017-09-25 19:17:58 +02:00
Bert Belder
d285bcfab7 epoll: break up _ep_wait() into two functions 2017-09-25 19:12:04 +02:00
Bert Belder
e4f213007f epoll: epoll_wait() should check whether maxevents is valid 2017-09-25 19:09:51 +02:00
Bert Belder
6629ae68b5 port: ep_port_feed_events() should return int not size_t 2017-09-25 19:08:25 +02:00
Bert Belder
fddb30bfd8 port: make ep_port_close() thread-safe 2017-09-25 18:35:37 +02:00
Bert Belder
258bc13100 port: make ep_port_delete() thread-safe 2017-09-25 18:35:37 +02:00
Bert Belder
7476633975 port: add a per-port lock 2017-09-25 18:35:36 +02:00
Bert Belder
f1383cadfd port: un-DRY closing IOCP port, don't fail delete if CloseHandle fails 2017-09-25 18:35:30 +02:00
Bert Belder
45728a1e90 api: reference the epoll port by windows HANDLE 2017-09-25 18:15:17 +02:00
Bert Belder
fd83d12648 port: move closing the IOCP port to it's own internal API 2017-09-25 18:15:17 +02:00
Bert Belder
3c2c4bfce7 api: use HANDLE and SOCKET types instead of their underlying types 2017-09-25 18:15:17 +02:00
Bert Belder
16f62017ba epoll: add global init function 2017-09-25 18:15:06 +02:00
Bert Belder
049a7b8be2 reflock-tree: add mechanism for pointer-safe tree lookups 2017-09-25 17:53:11 +02:00
Bert Belder
b9f4578a96 socket: use safe_container_of() in ep_sock_find_in_tree() 2017-09-25 17:52:08 +02:00
Bert Belder
1e24f44238 util: add safe_container_of() macro definition 2017-09-25 17:51:43 +02:00
Bert Belder
bb23a2b9f0 reflock: make it much simpler 2017-09-25 17:51:03 +02:00
Bert Belder
e4454c7e94 all-in-one: remove unnecessary blank lines from build output 2017-09-23 14:15:54 +02:00
Bert Belder
73d22b4419 init: rename global init functions to be more explicit 2017-09-23 14:05:35 +02:00
Bert Belder
a94fbfd459 test: add reflock test 2017-09-23 14:05:34 +02:00
Bert Belder
6029e38d79 reflock: first version of combined reference counter and lock 2017-09-23 14:05:30 +02:00
Bert Belder
4a0354a6d2 nt: add definitions for keyed event support 2017-09-23 13:58:20 +02:00
Bert Belder
773d9cace3 util: add static_assert() polyfill for clang 2017-09-23 13:58:20 +02:00
Bert Belder
d0a8ae1ca3 all-in-one: rebuild epoll-all-in-one.c 2017-09-14 16:42:20 +02:00
Bert Belder
91cb493efc poll-group: use new queue APIs to move groups inside the allocator queue 2017-09-14 16:41:17 +02:00
Bert Belder
048d2cc363 queue: add internal queue_move_first() and queue_move_last() APIs 2017-09-14 16:41:16 +02:00
Bert Belder
34df608b98 queue: move implementation from header to queue.c 2017-09-14 16:41:16 +02:00