229 Commits (7100af72ca5ad72a4c16bc1631e03a1d6f1a0035)

Author SHA1 Message Date
leitner 289ca04238 Work around OpenBSD. Again. 20 years ago
leitner f0e9a2afc9 work around broken Solaris sys/socket.h 20 years ago
leitner c169ae9b4a IRIX compatibility (yuck!) 20 years ago
leitner 9405f1271b remove gcc4-only warning option 20 years ago
leitner c874604f12 gcc 4 cleanups (mostly unsigned char* vs char*) 20 years ago
leitner 7cd919d333 silence two gcc warnings 20 years ago
leitner 11da04b651 fix descriptor leak in iob_addfile_close if the range was 0 (oops) 20 years ago
leitner 1205a3d38f byte_zero the allocated io_batch in iob_new 20 years ago
leitner 882885fdff remove cruft 20 years ago
leitner 9eb09b5bfe add iob_free and man page for iob_reset.
check in some windoze compat crap (still does not compile through for
windoze)
20 years ago
leitner e73c3e85f1 document error case 20 years ago
leitner bbf4c614bf fix iob_write to handle failure properly
document that the iob_write callback should limit itself
20 years ago
leitner f4c8a0c7c2 fix openbsd problem? 20 years ago
leitner fd4344f3c0 how could this ever have worked? 20 years ago
leitner 89c12ba545 typo, found by Tino Reichardt 20 years ago
leitner b617d63d1e update dependencies
add errmsg_info and msg
20 years ago
leitner bffb1dab90 mention prototype of io_write_callback 20 years ago
leitner 86cfc33dab add iob_write (send io batch through callback, e.g. for SSL) 20 years ago
leitner b48ce77792 add iob_write (to write an io batch through a callback) 20 years ago
leitner e95599085a use madvise MADV_PREFETCH to implement iob_prefetch 20 years ago
leitner f4108178f2 fix case where iob_send sends all from io batch, but then new data is
added and iob_send is called again
20 years ago
leitner 523f6f4765 cosmetics: use write instead of writev if there is only one buffer to
write (looks nicer in strace)
20 years ago
leitner 72382af11a Solaris compatibility for io_passfd and io_receivefd (untested, but at
least it compiles)
21 years ago
leitner 1e871b1c32 actually return 0 on success in io_passfd 21 years ago
leitner 696c5f872c add io_readwritefile, io_appendfile 21 years ago
leitner 11f0616cf3 work around broken Linux sendfile API (offset 64-bit but count 32-bit) 21 years ago
leitner 768a46e304 argh more bsd 21 years ago
leitner a23757a317 bsd compat 21 years ago
leitner f26451c086 slight optimization for sending 0 bytes from a file
(also fixes a FreeBSD-current sendfile breakage)
21 years ago
leitner 5e2141e9f6 fix bug in mmap code path of io_sendfile (David Leadbeater) 21 years ago
leitner d8ce4dc2e5 fix signal race (Scott Lamb) 21 years ago
leitner 076a8f4628 explicitly define extern globals 21 years ago
leitner 78d181cb3e document return values correctly 21 years ago
leitner 6fb76c3cd9 <io.h> -> <iob.h> 21 years ago
leitner 4aecd26995 add more man pages 21 years ago
leitner 24227e0e01 add sigpipe helper 21 years ago
leitner 1d9075071f add some man pages 21 years ago
leitner b27aa1a9d8 better error handling 21 years ago
leitner 70e112b892 add fd passing functions 21 years ago
leitner 745c4affc5 add io_socketpair 21 years ago
leitner 3996ade63e add iob_addfile_close (iob_reset will close the files) 21 years ago
leitner adcb7aee21 handle POLLNVAL (can't happen errors) 21 years ago
leitner 8454eb7e4c speculative pre-emptive freebsd 4 compatibility ;) 21 years ago
leitner 069aedc871 try to fix freebsd 4 compile error 21 years ago
leitner 4eed466fbc writev fix 21 years ago
leitner 177e18f415 the mmap+write version of io_sendfile sent too much at the end and/or
went into an infinite loop sometimes.
21 years ago
leitner c18a0dbf62 actually check in AIX sendfile code 21 years ago
leitner cae1a561fd integrate Linux sendfile into trysendfile.c infrastructure
first stab at AIX 5 sendfile support
21 years ago
leitner 7bcba8b2d1 still had bus error :( 21 years ago
leitner 91060a1772 still bus error 21 years ago
leitner 6d35239e2c bus error?! 21 years ago
leitner e92d4ca5f5 prefetching leaked memory 21 years ago
leitner f21e1c57a3 macos x support 21 years ago
leitner 8f188cc95b macos x support 21 years ago
leitner 7ddce27f49 Support Solaris 9 sendfile 21 years ago
leitner 4740036c6f #define _LARGEFILE64_SOURCE 21 years ago
leitner f484ecdc5f support HP-UX sendfile (thanks Rolf Eike Beer) 21 years ago
leitner 8ce9e6c016 sendfile 21 years ago
leitner 2a516c901a recent change corrected sendfile parameters but not internal usage 21 years ago
leitner fa476a9200 add experimental prefetching support 21 years ago
leitner f52aa87441 more alloca fixes 21 years ago
leitner 876738bd8e make cast nicer 21 years ago
leitner 03461c6eb1 more defensive programming for SIGIO (*groan*) 21 years ago
leitner 3cac9c2b80 make sure the mmap based io_sendfile actually works (and terminates) 21 years ago
leitner 9a0e23f420 oops, left debug #undef in 21 years ago
leitner a17f7c30d2 use mmap on BSD without sendfile 21 years ago
sanjiyan a58d400d5c fixing the poll call in io_waituntil2 21 years ago
leitner 0a38894c43 *duh* one extra zero 21 years ago
sanjiyan 29cfd8df4e reset timer correct. 21 years ago
sanjiyan 90bde5e569 reset the timer in the correct way. 21 years ago
leitner 6622288c7c make BSD sendfile actually work 21 years ago
leitner ba849a2720 duh!!! Typo prevented iob_send from using FreeBSD sendfile 21 years ago
leitner a4cf7a8a8b fix Solaris /dev/poll 21 years ago
leitner 65adb024f5 bug fixing time 21 years ago
leitner 82a4ae868d broken lose32 port using mingw (don't use!!!)
initial Solaris /dev/poll port
21 years ago
leitner b81e8bcd27 typo 21 years ago
leitner 17f3955f84 handle BSD errors 21 years ago
leitner 361872ffa4 handle errors properly 21 years ago
leitner 96be549818 handle errors signalled by epoll 21 years ago
leitner 0335358787 add io_finishandshutdown 21 years ago
leitner 0ba7b25005 make iob_reset actually free the buffers 21 years ago
leitner 543987da58 remove superfluous #includes
make it possibly to specify that a buffer should be freed
21 years ago
leitner 27ffe564a7 set flag only if setting to non-blocking worked 21 years ago
leitner fcd6082250 did not compile on BSD after SIGIO fix 21 years ago
leitner 209fef467e Big Duh! _SIGIO and SIGIO look too close 21 years ago
leitner ec060d6dee wrong fix 21 years ago
leitner 07a205405b Add DEBUG=1 to GNUmakefile
the epoll guard broke SIGIO
21 years ago
leitner 963fa817de guard against one descriptor being flagged twice 21 years ago
leitner b01e72af69 quick fix to non-block issue 21 years ago
leitner eaa4dea67b correctly initialize records before reusing them in io_fd
do something about unexpected epoll events
21 years ago
leitner 29ae01d54f glibc compatibility ;) 21 years ago
leitner 2e1da4790c alloca may be defined in stdlib.h 21 years ago
leitner d00a672dad alloca warning removal 21 years ago
leitner f6b5de0c93 forgot to include <unistd.h> 21 years ago
leitner b97909c538 remove warning 21 years ago
leitner 0c64df2331 make BSD sendfile optional (NetBSD doesn't have it) 21 years ago
leitner 97043d279f make io_waituntil actually take an "until", not a "how long"
fix io_timeouted to ignore fds where no timeout has been set
21 years ago
leitner 3dd2a0344b damn! 21 years ago
leitner c64f721daf oops, typo 21 years ago
leitner 519b512cc3 kqueue does not like timeout==-1 but wants a NULL pointer to wait
indefinitely
21 years ago
leitner 91368629ad two internal structures were named io_entry; renamed the iob one to iob_entry 21 years ago
leitner 3ec95df805 can't happen error should be -3 not -1 21 years ago
leitner 1de7812da2 man am I slow today 21 years ago
leitner c574ab3641 two more iob fixes 21 years ago
leitner e86a457f5c harmonize semantics of io_sendfile and iob_send 21 years ago
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
21 years ago
leitner 3e2f6d0439 add stupid little httpd 21 years ago
leitner ea8e1cc90b add iob_adds
add cookies to io
21 years ago
leitner 6b59c8aee7 add TCP_CORK support 21 years ago
leitner 8fd1875041 make iob_send return aggregate total 21 years ago
leitner 3c4f34b95e add loop 21 years ago
leitner 63ba06c763 add iob test 21 years ago
leitner a36316a0a5 bsd sendfile 21 years ago
leitner 7e7f07f382 alloca.h 21 years ago
leitner 4c2fb93a53 experimental io_batch implementation 21 years ago
leitner eb554a0ceb open files in large file mode 21 years ago
leitner 1bd720d8a4 add io_timeouted 21 years ago
leitner dfe75af4bd add io_sendfile with BSD support 21 years ago
leitner dc09a17215 fix 21 years ago
leitner b1a8110926 epoll now works enough for test/io5 21 years ago
leitner d213018a01 more kqueue/epoll 21 years ago
leitner 824630a489 more BSD compat 21 years ago
leitner eb563422c8 add io_canread and io_canwrite 21 years ago
leitner 325a6176ca write a small socket server with io_wait integration and add and debug
io framework enough to support the test program
21 years ago
leitner 8cd9323a1b add waituntil and waituntil2 (internal) 21 years ago
leitner ef0495b5e2 reverse return code for safemult API to conform to newer djb APIs 21 years ago
leitner f2d8be239f oops, forgot ! 21 years ago
leitner 63e070c1cb add long long buffer routines
add tai64 and tai6464 typedefs
add error message buffer routines
add io timeout routines
21 years ago
leitner 49818590ee beginnings of the io library 21 years ago