41 Commits

Author SHA1 Message Date
leitner
853242b078 next attempt (I need a bsd shell) 2021-04-25 11:09:25 +00:00
leitner
efb1a8a2ae kqueue path assumed EVFILT_READ and EVFILT_WRITE are bits that can be used with | and ~ and &
they aren't
2021-04-25 11:03:53 +00:00
leitner
c4b0dd6b81 move cleanup after check that all events are handled 2021-03-12 10:43:46 +00:00
leitner
15f004df55 prevent infinite loop in cleanup code for
io_close-with-outstanding-events-queued race prevention
2021-03-11 14:13:51 +00:00
leitner
69c9d1454d port the epoll optimizations to kqueue, hopefully repairing it in the process 2020-05-15 11:42:53 +00:00
leitner
9d51f000ef silence another compiler warning 2020-05-14 14:48:40 +00:00
leitner
bbaf63c7fd remove compiler warnings in ent
try to fix io_waituntil2 on freebsd
2020-05-14 14:46:31 +00:00
leitner
2a0bcc2fb6 implement deferred closing 2016-10-04 22:43:31 +00:00
leitner
a1f1986247 include <foo> -> include "foo" 2016-03-17 11:13:23 +00:00
leitner
967e3ce019 revert edge triggering epoll; it had reliability and fairness issues and
was also not actually faster
2014-08-28 19:03:57 +00:00
leitner
d9cbb3940c it turns out you don't need -1/EGAIN to know edge triggering told you
there is no more data, it's enough to read/write less than you asked for
2014-06-05 19:17:24 +00:00
leitner
a544abc39c switch io_fds from array to newly implemented (hopefully thread-safe) iarray
switch epoll from level triggering to edge triggering
2014-04-04 18:11:03 +00:00
leitner
ff3a3410ec hopefully this fixes the looping gatling processes 2013-10-01 23:15:51 +00:00
leitner
e175800a8c add io_fd_canwrite (like io_fd but assume the fd is writable)
save a few syscalls here and there
2012-04-10 21:15:51 +00:00
leitner
1fcfcd268a hups 2009-05-24 18:12:14 +00:00
leitner
83c1186870 fix for NetBSD 3.0 (they broke their sys/types.h)
remove support for ip6.int reverse lookup in DNS routines (the domain is
no longer delegated)
2006-06-23 03:53:16 +00:00
leitner
c1c50c7dbd further Windoze support (test/io5.c works, gatling still doesn't)
This is just to get gatling to work, I may remove it again after
    that.
2005-09-09 22:12:23 +00:00
leitner
b1e8f341ba no debug 2005-08-24 17:32:20 +00:00
leitner
12caccfd48 don't shrink in array_allocate 2005-08-24 17:30:40 +00:00
leitner
e1e80badf0 add some debug stuff 2005-08-24 17:13:35 +00:00
leitner
6fb76c3cd9 <io.h> -> <iob.h> 2004-03-02 22:41:34 +00:00
leitner
adcb7aee21 handle POLLNVAL (can't happen errors) 2004-02-24 00:20:04 +00:00
sanjiyan
a58d400d5c fixing the poll call in io_waituntil2 2003-11-14 14:50:34 +00:00
leitner
a4cf7a8a8b fix Solaris /dev/poll 2003-11-06 21:08:30 +00:00
leitner
65adb024f5 bug fixing time 2003-11-06 20:54:59 +00:00
leitner
82a4ae868d broken lose32 port using mingw (don't use!!!)
initial Solaris /dev/poll port
2003-11-06 20:47:59 +00:00
leitner
b81e8bcd27 typo 2003-11-01 04:52:35 +00:00
leitner
17f3955f84 handle BSD errors 2003-11-01 04:51:07 +00:00
leitner
361872ffa4 handle errors properly 2003-11-01 04:47:55 +00:00
leitner
96be549818 handle errors signalled by epoll 2003-11-01 04:44:33 +00:00
leitner
963fa817de guard against one descriptor being flagged twice 2003-10-19 16:38:31 +00:00
leitner
eaa4dea67b correctly initialize records before reusing them in io_fd
do something about unexpected epoll events
2003-10-12 16:50:55 +00:00
leitner
29ae01d54f glibc compatibility ;) 2003-10-10 20:13:07 +00:00
leitner
3dd2a0344b damn! 2003-09-26 16:16:01 +00:00
leitner
c64f721daf oops, typo 2003-09-26 16:15:04 +00:00
leitner
519b512cc3 kqueue does not like timeout==-1 but wants a NULL pointer to wait
indefinitely
2003-09-26 16:14:03 +00:00
leitner
2a2e1ddc75 add sigio support
extend code to cope with edge triggered event notification
add io_eagain() so that you can notify io_wait if accept() returned EAGAIN
2003-09-12 22:03:51 +00:00
leitner
dc09a17215 fix 2003-09-06 01:37:54 +00:00
leitner
b1a8110926 epoll now works enough for test/io5 2003-09-06 01:36:50 +00:00
leitner
325a6176ca write a small socket server with io_wait integration and add and debug
io framework enough to support the test program
2003-09-05 22:59:40 +00:00
leitner
8cd9323a1b add waituntil and waituntil2 (internal) 2003-09-05 21:29:05 +00:00