You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
leitner eaa4dea67b correctly initialize records before reusing them in io_fd
do something about unexpected epoll events
22 years ago
array that wasn't it 22 years ago
buffer add long long buffer routines 22 years ago
byte change length or size specifiers in APIs from int to long 22 years ago
case change case_*b from char* to void* so it is function pointer compatible 22 years ago
dns EPROTO -> EINVAL for BSD backwards compatibility (did I mention that BSD *sucks*?) 22 years ago
fmt remove special case stralloc textcode functions 22 years ago
io correctly initialize records before reusing them in io_fd 22 years ago
mmap document error signalling through (void*)0 return code. 23 years ago
mult reverse return code for safemult API to conform to newer djb APIs 22 years ago
open use <fcntl.h> and not <sys/fcntl.h> 22 years ago
scan remove special case stralloc textcode functions 22 years ago
socket work around itojun BSD IPV6_ONLY brokenness 22 years ago
str change length or size specifiers in APIs from int to long 22 years ago
stralloc add stralloc_diff and stralloc_diffs 22 years ago
tai even more man pages 23 years ago
taia add long long buffer routines 22 years ago
test add cescape stuff and two tests 22 years ago
textcode don't use black list for urlencoding, use white list. 22 years ago
uint more man page typos 22 years ago
unix man pages gave wrong include path (Hynek Schlawack) 22 years ago
.cvsignore more cvsignoring 22 years ago
CHANGES more documentation 22 years ago
COPYING Initial revision 24 years ago
GNUmakefile this time "make Makefile" actually produces a Makefile that works on FreeBSD 22 years ago
README mention my email address 22 years ago
array.h add long long buffer routines 22 years ago
buffer.h add long long buffer routines 22 years ago
byte.h change length or size specifiers in APIs from int to long 22 years ago
case.h remove obsolete extern from header files 22 years ago
dns.h remove obsolete extern from header files 22 years ago
fmt.h remove special case stralloc textcode functions 22 years ago
io.h add sigio support 22 years ago
io_internal.h add sigio support 22 years ago
iob.h add stupid little httpd 22 years ago
iob_internal.h two internal structures were named io_entry; renamed the iob one to iob_entry 22 years ago
iopause.h1 monster update: add tai, taia, iopause, case, and ipv6 enhanced dns 23 years ago
iopause.h2 use sys/poll.h instead of poll.h for iopause 22 years ago
ip4.h remove obsolete extern from header files 22 years ago
ip6.h remove obsolete extern from header files 22 years ago
mmap.h remove obsolete extern from header files 22 years ago
ndelay.h remove obsolete extern from header files 22 years ago
open.h remove obsolete extern from header files 22 years ago
openreadclose.h remove obsolete extern from header files 22 years ago
readclose.h remove obsolete extern from header files 22 years ago
safemult.h reverse return code for safemult API to conform to newer djb APIs 22 years ago
scan.h remove special case stralloc textcode functions 22 years ago
select.h1 monster update: add tai, taia, iopause, case, and ipv6 enhanced dns 23 years ago
select.h2 more BSD compat 22 years ago
socket.h remove obsolete extern from header files 22 years ago
str.h remove obsolete extern from header files 22 years ago
stralloc.h remove obsolete extern from header files 22 years ago
t.c use sys/poll.h instead of poll.h for iopause 22 years ago
tai.h remove obsolete extern from header files 22 years ago
taia.h add long long buffer routines 22 years ago
textcode.h remove special case stralloc textcode functions 22 years ago
trybsdsf.c oops 22 years ago
tryepoll.c add epoll and kqueue tests 22 years ago
tryinline.c work around compilers that don't understand "static inline" 23 years ago
tryip6.c test for ipv6 and if_name2index and socklen_t. 23 years ago
trykqueue.c add epoll and kqueue tests 22 years ago
tryn2i.c test for ipv6 and if_name2index and socklen_t. 23 years ago
trypoll.c monster update: add tai, taia, iopause, case, and ipv6 enhanced dns 23 years ago
trysigio.c oops, forgot to add sigio test program 22 years ago
trysl.c test for ipv6 and if_name2index and socklen_t. 23 years ago
trysysel.c monster update: add tai, taia, iopause, case, and ipv6 enhanced dns 23 years ago
uint16.h remove obsolete extern from header files 22 years ago
uint32.h remove obsolete extern from header files 22 years ago
uint64.h add int64 type to uint64.h 22 years ago

README

libowfat is a library of general purpose APIs extracted from Dan
Bernstein's software, reimplemented and covered by the GNU General
Public License Version 2 (no later versions).

The API has been slightly extended (for example, I provide a uint32_read
function, and I extended the socket API to support IPv6) where I found
it necessary or beneficial in a specific project.

Many of the functions I implement here have since been placed in the
public domain, so there are other sources to get this code (except for
my extensions obviously).  The implementations here may not be as
portable as the original versions; I tend to focus on the Single Unix
Specification and not on some obsolete legacy systems found in the
basements of some vintage hardware clubs.

I also provide man pages for many functions, mostly extracted from Dan's
web documentation or documentation found in earlier versions of his
software.  For some reason, he abandoned man pages in favor of HTML
recently.

On July 4 2002, Dan also placed his DNS routines and supporting
low level functions in the public domain, so I copy them here instead of
reimplementing them.  http://online.securityfocus.com/archive/1/280642
has an online version of the bugtraq posting.

The author can be reached under felix-libowfat@fefe.de