292 lines
11 KiB
Plaintext
Raw Normal View History

2008-11-15 16:14:19 +00:00
0.29:
save 8 bytes in taia.h for 64-bit systems
add buffer_tosa (buffer writing to auto-growing stralloc)
2009-03-12 21:32:43 +00:00
add iarray
2008-11-15 16:14:19 +00:00
2007-12-18 14:32:55 +00:00
0.28:
2008-01-13 21:40:24 +00:00
add uint64 pack and unpack routines
fix subtle typo in sub_of (David Sirovsky)
work around gcc bugs
2007-12-18 14:32:55 +00:00
2007-08-24 21:36:29 +00:00
0.27:
2007-10-09 13:49:26 +00:00
add fmt_strm
2007-10-17 13:06:56 +00:00
add iob_addbuf_munmap
2007-11-02 00:39:51 +00:00
add socket_deferaccept
catch one more case in umult64 (Tomi Jylhä-Ollila)
2007-08-24 21:36:29 +00:00
2007-01-12 02:15:57 +00:00
0.26:
fix really pathological case where io_timeouted would never
start over from the beginning because always new accept()ed
connections came in and got newer, higher descriptors since the last
io_timeouted loop. (Dirk Engling)
add some int overflow check macros to rangecheck.h
fmt_ip6 compresses at best spot, not at first spot (Nikola Vladov)
use inttypes.h to declare ints in uint*.h
2007-06-28 20:01:05 +00:00
escape more in fmt_ldapescape
try to catch malicious input in textcode fmt_* functions
fmt_xlonglong was utterly broken (Johannes Vetter)
2007-01-12 02:15:57 +00:00
2005-08-09 18:14:10 +00:00
0.25:
2005-08-24 19:22:06 +00:00
array_allocate no longer truncates the array
array_get now not only checks whether the element fits in the
allocates space, it also needs to be in the initialized space.
add -D_REENTRANT to CFLAGS so libowfat can be used in multi-threaded
programs
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.
implement Nikola's idea to remove limit number of strings in errmsg
2005-10-14 15:37:19 +00:00
add taia_half
2005-11-25 15:02:31 +00:00
add cdb
2006-04-17 04:33:40 +00:00
add rangecheck.h
add io_block
make socket_(tc|ud)p[46] actually return non-blocking sockets as
documented (Richard Lyons)
fix for NetBSD 3.0 (Their /sys/types.h actually does not define u_char
unless you #define _NETBSD_SOURCE, and then their CMSG_* macros use
it. This is horrible even by OpenBSD standards)
remove support for ip6.int (it's no longer delegated)
add asm versions of imult64 and umult64 for x86_64
(22 cycles -> 12 cycles on my Athlon 64)
2006-11-07 17:56:05 +00:00
use size_t and ssize_t instead of unsigned long et al
add iob_bytesleft
don't leak memory in test/httpd
2005-08-09 18:14:10 +00:00
2005-05-24 08:51:21 +00:00
0.24:
2005-06-08 04:08:18 +00:00
fix scan_to_sa (Tim Lorenz)
2005-07-01 19:30:52 +00:00
turns out we can not do file descriptor passing on OpenBSD
if _XOPEN_SOURCE is defined, which is needed for Solaris.
OpenBSD sucks. I checked in a _really_ kludge now. Please do not
use OpenBSD if you have a choice. Or Solaris, for that matter.
turns out the imult routines (which I never used) were incorrect.
Noted by Matthew Dempsky
open_* from open.h now open in large file mode
2005-05-24 08:51:21 +00:00
2005-03-11 22:38:36 +00:00
0.23:
also recognize EPFNOSUPPORT as EAFNOSUPPORT (groan)
2005-04-07 06:49:59 +00:00
fix a few man pages
2005-04-12 06:48:39 +00:00
optimize fmt_base64 (Dan Gundlach)
gcc 4 cleanups (mostly unsigned char* vs char*)
fix scan_xlong, scan_xlonglong and scan_8long
remove a few gcc 4 warnings
work around freebsd 5.4 brokenness (if you don't have IPv6 in the
kernel, socket(PF_INET6,SOCK_STREAM,0) returns EPROTONOSUPPORT
instead of EPFNOSUPPORT, which basically says "yeah, I know IPv6,
but TCP? never heard of it")
remove even more warnings
64-bit cleanliness issue with auto-NULL-appending macros
2005-05-20 14:14:15 +00:00
IRIX compatibility (yuck!)
2005-03-11 22:38:36 +00:00
2005-01-31 18:30:14 +00:00
0.22:
uh, the scope_id detection #defined the wrong constant. libowfat
always thought there was no scope_id. Oops.
2005-02-04 19:06:26 +00:00
#include <unistd.h> in io/io_sendfile.c (broken OpenBSD, thx Rob)
2005-02-21 13:15:33 +00:00
add scan_urlencoded2 (like scan_urlencoded but will not convert '+' to
' '; needed for web servers, so they can serve libstdc++.tar.gz)
fix iob_write to handle failure properly
document that the iob_write callback should limit itself
2005-03-08 20:09:03 +00:00
fix mmap_shared
add iob_free, add man pages for iob_free and iob_reset
fix descriptor leak in iob_addfile_close if the range was 0 (oops)
2005-01-31 18:30:14 +00:00
2004-07-29 11:12:53 +00:00
0.21:
2004-09-17 13:51:35 +00:00
errno cleanup and man page updates (Rolf Eike Beer)
implement iob_prefetch with madvise MADV_WILLNEED if it's defined
extend API To read line/token to stralloc to allow clearing the
stralloc first.
add stralloc_zero to clear a stralloc
2004-11-25 20:21:31 +00:00
add buffer_putsflush
2004-11-25 20:51:53 +00:00
add stralloc_catm and stralloc_copym
add buffer_putm and buffer_putmflush
cleanups in stralloc and buffer:
int -> long for sizes
char -> unsigned char for strings
buffer_getline is now a function, not a macro
add iob_write (send io batch through callback, e.g. for SSL)
add errmsg_info and errmsg_infosys to write to stdout instead
2005-01-31 18:13:46 +00:00
epoll fix (how could this ever work?)
2004-07-29 11:12:53 +00:00
2004-05-05 16:36:00 +00:00
0.20:
add errmsg API
work around broken Linux sendfile API (offset 64-bit but count 32-bit)
2004-05-10 20:08:38 +00:00
add io_appendfile, io_readwritefile
support ip6.arpa in addition to ip6.int in dns_name (adds one
parameter to dns_name6_domain and two constants in dns.h)
Solaris compatibility for io_passfd and io_receivefd
2004-05-05 16:36:00 +00:00
2004-03-28 01:54:28 +00:00
0.19.2:
for some reason, a botched dependency slipped in the the Makefile
2004-03-27 17:26:59 +00:00
0.19.1:
oops, I botched havealloca.h, which was not generated but static
Now it is generated.
2004-03-27 01:02:28 +00:00
2004-02-27 13:58:17 +00:00
0.19:
add io_socketpair
2004-02-27 14:47:31 +00:00
add io_passfd and io_receivefd (and test/fdpassing.c)
2004-02-27 17:04:02 +00:00
io_trywrite and io_waitwrite not ignore SIGPIPE
2004-03-02 22:51:14 +00:00
add man pages for libio, safemult
2004-03-07 21:48:56 +00:00
fix possible signal race in io_tryread and io_trywrite (Scott Lamb)
fix byte_rchr return value (Marcus Winkler)
fix bug in mmap code path of io_sendfile (David Leadbeater)
2004-02-27 13:58:17 +00:00
2004-02-19 16:32:20 +00:00
0.18:
2004-02-26 17:49:11 +00:00
make libowfat compile on BSD again (sorry, and thanks to everyone who
sent me a patch :-D)
add iob_addfile_close, needed for gatling 0.5+
2004-02-26 18:01:15 +00:00
add test/client and test/server, two simple TCP shell interfaces
2004-02-19 16:32:20 +00:00
0.17:
add Linux SIGIO support to IO
expand IO api to be able to cope with edge triggered event
notification: introduce io_eagain
the integer scan routines should only write *dest if they actually
scanned something
io_sendfile and iob_send should return -1 to -3 just like io_trywrite
make io_waituntil actually take an "until", not a "how long"
2003-10-07 00:13:19 +00:00
turns out that BSD kqueue is actually Free/OpenBSD kqueue -- NetBSD
doesn't have it. That means I'll need some adaptive two-threads-
running-poll approach to get C10k type scalability on NetBSD :-(
turns out that BSD sendfile is actually FreeBSD sendfile -- neither
OpenBSD nor NetBSD have it (as of 3.4 and 1.6.1). That means I'll
need to try using mmap on OpenBSD and NetBSD to get zero-copy TCP.
2003-10-19 17:21:14 +00:00
guard against same event being signalled twice (confused our list
handling)
add support for Solaris /dev/poll
add lose32 support (broken, please don't use!)
2003-12-05 16:45:34 +00:00
head -1 -> head -n 1
apending 0 bytes to an empty array would fail it
remove socket_sendfile now that we have io_sendfile
2004-01-06 23:35:06 +00:00
break out alloca #include dependency into havealloca.h
support HP-UX sendfile64 (thanks to Rolf Eike Beer)
2004-01-08 17:11:08 +00:00
support Solaris sendfile64
2004-01-14 01:18:06 +00:00
support MacOS X sendfile (and comment it out again, the headers
declare it but it's not actually there) (thanks to Bernhard Schmidt)
support AIX 5 (thanks to Lutz Chwala and Arthur Erhardt)
2004-01-15 18:43:49 +00:00
fix ip6_fmt (martin paljak)
0.16:
add buffer_fromsa (make buffer from stralloc)
add API for integer multiply with overflow detection
change length counters from int to long for 64-bit platforms
2003-09-01 17:59:12 +00:00
add array API from http://cr.yp.to/lib/array.html
oops, had a declaration and man page for taia_addsec but not the
function itself
add buffer functions to write strerror(errno)
2003-09-06 01:39:19 +00:00
add io API supporting poll, epoll and kqueue
remove obsolete "extern" from header files
2003-09-08 21:05:27 +00:00
add iob API to send several buffers and files in one batch
2002-10-17 17:28:29 +00:00
0.15:
man page update (document stralloc return values)
add stralloc_chop and stralloc_chomp
add buffer_putsa, buffer_get_token_sa and buffer_getline_sa
extended uudecode test. See comment at top for details.
fix #include in ndelay*.3 (Hynek Schlawack)
2002-10-28 20:15:03 +00:00
add stralloc_diff and stralloc_diffs (my invention)
scan_ip6 returned 1 for "::" (Uwe Ohse)
add el-cheapo MIME decoding to test/uudecode
make install forgot to install ndelay.h
2003-01-27 02:16:43 +00:00
fix typos in several man pages (Hynek Schlawack)
add stralloc versions of textcode API (Kai Ruemmler)
add html to textcode ('<' to '&lt;' etc)
2003-04-25 19:06:19 +00:00
add fmt_human and fmt_humank (format numbers ala ls -H/-h)
2003-04-27 17:11:50 +00:00
add fmt_httpdate and scan_httpdate
2003-04-28 20:58:04 +00:00
fix typo breaking buffer_GETC in buffer (Marcus Winkler)
2003-05-01 20:40:41 +00:00
fix typo breaking fmt_long for dest==NULL
add fmt_*longlong()
2003-06-08 20:02:09 +00:00
add range check to scan_ulong, scan_ulonglong, scan_uint and
scan_ushort
extended socket API; you can now pass NULL for results you don't want
rename Makefile to GNUmakefile; create Makefile target
add buffer_get_token_pred and buffer_get_token_sa_pred
2002-10-17 17:28:29 +00:00
0.14:
2002-08-14 15:54:49 +00:00
avoid bus errors in byte_copy
byte_rchr was completely broken
add case, iopause, tai, taia, openreadclose and ipv6-enhanced dns
2002-05-03 19:20:39 +00:00
0.13:
fixed several bugs in test/uudecode.c
2002-05-17 00:07:00 +00:00
add uninstall target
2002-05-17 20:58:57 +00:00
add uint16_read API like the uint32_read one
2002-05-17 21:14:54 +00:00
add buffer_putnlflush
2002-06-02 00:46:17 +00:00
lots of general clean-ups from Jukka Zitting:
add FMT_LONG to fmt.h (FMT_ULONG plus 1 for sign)
fmt_strn did not work for out==NULL
fix inconsistencies in man pages
make scan_urlencode do the '+' -> ' ' transformation
2002-05-03 19:20:39 +00:00
0.12:
add textcode api for uuencode/uudecode, base64, quoted printable,
url-encoding and yenc.
2002-03-25 22:57:47 +00:00
0.11:
fix fmt_long (didn't count the '-'), which in turn broke
buffer_putlong
2002-04-15 13:44:38 +00:00
referenced wrong include file in stralloc_ready and stralloc_readyplus
man page.
2002-03-25 22:57:47 +00:00
2002-02-28 15:50:45 +00:00
0.10:
add comment to stralloc.h that explains the structure (Markus Brischke)
2002-03-22 23:40:51 +00:00
fix socket routines (two cut-and-paste errors)
2002-02-28 15:50:45 +00:00
0.9:
fmt_str did not check for out==NULL! Thanks, Uwe Ohse.
Updated to buffer to fix read buffers. Thanks, David Lichteblau.
2001-11-25 22:54:58 +00:00
Oops! byte_copy had a trivial and dumb typo in it that I'm unsure how
I could have missed it.
2001-11-25 23:50:09 +00:00
add mmap man pages.
update and add socket man pages.
2001-11-26 17:42:05 +00:00
don't include str.h from fmt.h
2002-02-28 15:50:45 +00:00
document error signalling for the mmap functions.
2001-10-15 14:34:02 +00:00
0.8:
BSD compatibility.
fix mmap_shared.
ranlib.
s/EPROTO/EPROTONOSUPPORT/.
2001-10-13 03:45:17 +00:00
0.7:
add buffer_putspace
fix b0read prototype in buffer/buffer_0*
scan_ip6 will not transparently scan IPv4 addresses and save them as
v4-mapped addresses (::ffff:127.0.0.1).
byte_copy was sped up (but made larger in the process)
2001-02-02 17:54:47 +00:00
0.6:
2001-02-05 18:25:24 +00:00
changed name to libowfat.
fixed fmt_ulong (did not output 0 correctly).
added buffer.
extended buffer API to include buffer_putulong() and friends.
2001-06-14 12:45:28 +00:00
oops, the read buffering was completely broken!
add mmap library (idea from Ingo Oeser)
2001-02-02 17:54:47 +00:00
0.5:
made subdirectories for the different libraries.
moved the sources into the corresponding subdirectory.
imported my man pages from libdjb.
removed fmt_int.c and fmt_uint.c (they are macros in fmt.h).
corrected comment in open.h for open_excl.
wrote new man pages for fmt_double, scan_double, the sign fmt_ and
scan_ routines, the whitespace and charset scan_ routines, and the
str and stralloc routines.
0.4:
implemented stralloc.
0.3:
implemented uint16, uint32 and uint64. The header files try to
define shortcut endianness conversion routines that do not convert
anything.
implemented open (I hope I got open_excl right, I couldn't find an
implementationen).
0.2:
implemented the scan, fmt and str interfaces.
added adapted fmt_double and scan_double from diet libc.
0.1:
initial release.
implemented the byte interface.