Mirror of :pserver:cvs@cvs.fefe.de:/cvs libowfat https://www.fefe.de/libowfat/
Go to file
Felix von Leitner e3b165e9e8 add buffer_putm and buffer_putmflush 2004-11-25 20:51:53 +00:00
array more alloca fixes 2004-01-06 23:35:06 +00:00
buffer add buffer_putm and buffer_putmflush 2004-11-25 20:51:53 +00:00
byte fix embarassing bug 2004-03-12 23:20:42 +00:00
case change case_*b from char* to void* so it is function pointer compatible 2003-09-01 15:28:51 +00:00
dns man page update 2004-09-17 13:51:35 +00:00
fmt add a few man pages 2004-02-04 23:02:35 +00:00
io use madvise MADV_PREFETCH to implement iob_prefetch 2004-09-27 19:46:42 +00:00
mmap broken lose32 port using mingw (don't use!!!) 2003-11-06 20:47:59 +00:00
mult add safemult man pages 2004-03-02 22:51:14 +00:00
open add a few man pages 2004-02-04 23:02:35 +00:00
scan add a few man pages 2004-02-04 23:02:35 +00:00
socket man page update 2004-09-17 13:51:35 +00:00
str change length or size specifiers in APIs from int to long 2003-08-26 17:58:14 +00:00
stralloc add buffer_putm and buffer_putmflush 2004-11-25 20:51:53 +00:00
tai even more man pages 2002-09-16 23:49:15 +00:00
taia broken lose32 port using mingw (don't use!!!) 2003-11-06 20:47:59 +00:00
test don't output newline if output is not going to terminal 2004-11-22 00:33:12 +00:00
textcode more alloca fixes 2004-01-06 23:35:06 +00:00
uint more man page typos 2003-01-27 02:16:43 +00:00
unix More Windoze crap 2003-11-20 23:49:38 +00:00
.cvsignore new Makefile 2004-05-05 20:05:22 +00:00
CHANGES add buffer_putm and buffer_putmflush 2004-11-25 20:51:53 +00:00
COPYING Initial revision 2001-02-02 17:54:47 +00:00
GNUmakefile argh, my sed cannot do \< ?!? 2004-07-29 10:59:40 +00:00
Makefile add { } while (0) trick to errmsg macros 2004-08-26 16:08:37 +00:00
README mention my email address 2002-10-21 22:35:17 +00:00
TODO add url to solaris 10 event notification api 2004-09-13 11:59:10 +00:00
array.h add long long buffer routines 2003-09-05 21:09:14 +00:00
buffer.h add buffer_putm and buffer_putmflush 2004-11-25 20:51:53 +00:00
byte.h change length or size specifiers in APIs from int to long 2003-08-26 17:58:14 +00:00
case.h remove obsolete extern from header files 2003-09-06 23:49:47 +00:00
dns.h oops, forgot to commit 2004-07-14 06:37:03 +00:00
errmsg.h add { } while (0) trick to errmsg macros 2004-08-26 16:08:37 +00:00
fmt.h remove special case stralloc textcode functions 2003-09-19 19:08:13 +00:00
io.h add io_readwritefile, io_appendfile 2004-05-10 20:08:38 +00:00
io_internal.h explicitly define extern globals 2004-03-06 10:35:09 +00:00
iob.h add iob_addfile_close (iob_reset will close the files) 2004-02-25 02:22:54 +00:00
iob_internal.h add iob_addfile_close (iob_reset will close the files) 2004-02-25 02:22:54 +00:00
iopause.h1 monster update: add tai, taia, iopause, case, and ipv6 enhanced dns 2002-09-16 01:09:56 +00:00
iopause.h2 use sys/poll.h instead of poll.h for iopause 2002-12-07 14:54:43 +00:00
ip4.h remove obsolete extern from header files 2003-09-06 23:49:47 +00:00
ip6.h add routines to scan and output ipv6 addresses with %eth0 notation. 2003-12-05 19:53:59 +00:00
mmap.h remove obsolete extern from header files 2003-09-06 23:49:47 +00:00
ndelay.h remove obsolete extern from header files 2003-09-06 23:49:47 +00:00
open.h add a few man pages 2004-02-04 23:02:35 +00:00
openreadclose.h remove obsolete extern from header files 2003-09-06 23:49:47 +00:00
readclose.h remove obsolete extern from header files 2003-09-06 23:49:47 +00:00
safemult.h reverse return code for safemult API to conform to newer djb APIs 2003-09-05 21:25:51 +00:00
scan.h remove special case stralloc textcode functions 2003-09-19 19:08:13 +00:00
select.h1 monster update: add tai, taia, iopause, case, and ipv6 enhanced dns 2002-09-16 01:09:56 +00:00
select.h2 more BSD compat 2003-09-06 00:03:27 +00:00
socket.h one more extern 2004-01-06 22:55:25 +00:00
str.h remove obsolete extern from header files 2003-09-06 23:49:47 +00:00
stralloc.h add buffer_putm and buffer_putmflush 2004-11-25 20:51:53 +00:00
t.c add buffer_putm and buffer_putmflush 2004-11-25 20:51:53 +00:00
tai.h remove obsolete extern from header files 2003-09-06 23:49:47 +00:00
taia.h add long long buffer routines 2003-09-05 21:09:14 +00:00
textcode.h remove special case stralloc textcode functions 2003-09-19 19:08:13 +00:00
tryalloca.c add alloca test 2004-03-27 17:26:06 +00:00
trybsdsf.c macos x support 2004-01-08 17:11:08 +00:00
trydevpoll.c broken lose32 port using mingw (don't use!!!) 2003-11-06 20:47:59 +00:00
tryepoll.c add epoll and kqueue tests 2003-09-06 00:52:11 +00:00
tryinline.c work around compilers that don't understand "static inline" 2001-11-24 20:09:31 +00:00
tryip6.c test for ipv6 and if_name2index and socklen_t. 2001-11-24 19:34:32 +00:00
trykqueue.c add epoll and kqueue tests 2003-09-06 00:52:11 +00:00
tryn2i.c test for ipv6 and if_name2index and socklen_t. 2001-11-24 19:34:32 +00:00
trypoll.c monster update: add tai, taia, iopause, case, and ipv6 enhanced dns 2002-09-16 01:09:56 +00:00
tryscope.c broken lose32 port using mingw (don't use!!!) 2003-11-06 20:47:59 +00:00
trysendfile.c detect sendfile on Linux with glibc 2004-01-30 12:37:39 +00:00
trysigio.c oops, forgot to add sigio test program 2003-09-12 23:18:51 +00:00
trysl.c broken lose32 port using mingw (don't use!!!) 2003-11-06 20:47:59 +00:00
trysocket.c add trysocket.c 2004-01-08 17:12:39 +00:00
trysysel.c monster update: add tai, taia, iopause, case, and ipv6 enhanced dns 2002-09-16 01:09:56 +00:00
uint16.h remove obsolete extern from header files 2003-09-06 23:49:47 +00:00
uint32.h remove obsolete extern from header files 2003-09-06 23:49:47 +00:00
uint64.h add int64 type to uint64.h 2003-08-03 22:24:32 +00:00
windoze.h add windoze.h 2003-11-06 22:43:30 +00:00

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