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 66b342099c add asm versions of imult64 and umult64 for x86_64
(22 cycles -> 12 cycles on my Athlon 64)
19 years ago
array don't shrink in array_allocate 20 years ago
buffer add RETURN VALUE section 19 years ago
byte typo in comment 19 years ago
case change case_*b from char* to void* so it is function pointer compatible 22 years ago
cdb make socket_(tc|ud)p[46] actually return non-blocking sockets as 19 years ago
dns fix for NetBSD 3.0 (they broke their sys/types.h) 19 years ago
examples add a few examples 19 years ago
fmt remove even more warnings 20 years ago
io fix for NetBSD 3.0 (they broke their sys/types.h) 19 years ago
mmap add mmap_unmap 19 years ago
mult add asm versions of imult64 and umult64 for x86_64 19 years ago
open turns out the imult routines (which I never used) were incorrect. 20 years ago
scan make socket_(tc|ud)p[46] actually return non-blocking sockets as 19 years ago
socket fix for NetBSD 3.0 (they broke their sys/types.h) 19 years ago
str remove a few gcc 4 warnings 20 years ago
stralloc cut and paste bug (Max Bernöcker) 19 years ago
tai even more man pages 23 years ago
taia add taia_half 19 years ago
test catch write error in uudecode 19 years ago
textcode make socket_(tc|ud)p[46] actually return non-blocking sockets as 19 years ago
uint more man page typos 22 years ago
unix remove even more warnings 20 years ago
.cvsignore new Makefile 21 years ago
CHANGES add asm versions of imult64 and umult64 for x86_64 19 years ago
COPYING Initial revision 24 years ago
GNUmakefile fix for NetBSD 3.0 (they broke their sys/types.h) 19 years ago
Makefile better Makefile 19 years ago
README mention my email address 22 years ago
TODO fix for NetBSD 3.0 (they broke their sys/types.h) 19 years ago
array.h add -D_REENTRANT to CFLAGS so libowfat can be used in multi-threaded 20 years ago
buffer.h remove even more warnings 20 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
cdb.h make socket_(tc|ud)p[46] actually return non-blocking sockets as 19 years ago
cdb_make.h make socket_(tc|ud)p[46] actually return non-blocking sockets as 19 years ago
dns.h fix for NetBSD 3.0 (they broke their sys/types.h) 19 years ago
errmsg.h remove even more warnings 20 years ago
errmsg_int.h add errmsg_int.h 19 years ago
fmt.h remove special case stralloc textcode functions 21 years ago
io.h add io_block 19 years ago
io_internal.h further Windoze support (test/io5.c works, gatling still doesn't) 19 years ago
iob.h add iob_free and man page for iob_reset. 20 years ago
iob_internal.h add iob_addfile_close (iob_reset will close the files) 21 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 add prototype for dns_name6 (Rolf Eike Beer) 20 years ago
ip6.h add prototype for dns_name6 (Rolf Eike Beer) 20 years ago
mmap.h make socket_(tc|ud)p[46] actually return non-blocking sockets as 19 years ago
ndelay.h remove obsolete extern from header files 22 years ago
open.h add a few man pages 21 years ago
openreadclose.h remove obsolete extern from header files 22 years ago
rangecheck.h gcc 4.1 version of the code also works with other compilers, so make it 19 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 21 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 fix for NetBSD 3.0 (they broke their sys/types.h) 19 years ago
str.h remove obsolete extern from header files 22 years ago
stralloc.h remove even more warnings 20 years ago
t.c add rangecheck.h 19 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 make socket_(tc|ud)p[46] actually return non-blocking sockets as 19 years ago
tryalloca.c fix for NetBSD 3.0 (they broke their sys/types.h) 19 years ago
trybsdsf.c macos x support 21 years ago
trydevpoll.c broken lose32 port using mingw (don't use!!!) 21 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
tryscope.c broken lose32 port using mingw (don't use!!!) 21 years ago
trysendfile.c IRIX compatibility (yuck!) 20 years ago
trysigio.c oops, forgot to add sigio test program 22 years ago
trysl.c broken lose32 port using mingw (don't use!!!) 21 years ago
trysocket.c add trysocket.c 21 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
windoze.h add windoze.h 21 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