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 b67a1af443 only use writev for larger chunks in buffer_putflush
only use lseek if it saves a read in buffer_seek
4 years ago
array half-hearted improvements to Windows compilability 6 years ago
buffer only use writev for larger chunks in buffer_putflush 4 years ago
byte add byte_start, byte_starts 4 years ago
case #include <foo.h> -> #include <libowfat/foo.h> 8 years ago
cdb add compiler.h to abstract gcc attributes 4 years ago
critbit #include <foo.h> -> #include <libowfat/foo.h> 8 years ago
dns use write in buffer_put for a slight perf improvement 7 years ago
examples include <foo> -> include "foo" 9 years ago
fmt add man pages for fmt_copybytes and fmt_copybytes_sizeof_minus1 4 years ago
io add compiler.h to abstract gcc attributes 4 years ago
mmap make mmap_private on Windows work on read-only files, too 6 years ago
mult move unit tests into each file (compile with -DUNITTEST) 8 years ago
open #include <foo.h> -> #include <libowfat/foo.h> 8 years ago
scan add "make check" target and make it work :) 4 years ago
socket less warnings 6 years ago
str add unit test 6 years ago
stralloc #include <foo.h> -> #include <libowfat/foo.h> 8 years ago
tai #include <foo.h> -> #include <libowfat/foo.h> 8 years ago
taia #include <foo.h> -> #include <libowfat/foo.h> 8 years ago
test add libowfat/ to includes 6 years ago
textcode make check can now run in parallel 4 years ago
uint #include <foo.h> -> #include <libowfat/foo.h> 8 years ago
unix use write in buffer_put for a slight perf improvement 7 years ago
.cvsignore put includes into <libowfat/*.h> 8 years ago
CAS.h remove a few compiler warnings 8 years ago
CHANGES add compiler.h to abstract gcc attributes 4 years ago
COPYING Initial revision 24 years ago
GNUmakefile add compiler.h to abstract gcc attributes 4 years ago
Makefile also install parse.h 4 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 compiler.h to abstract gcc attributes 4 years ago
buffer.h add compiler.h to abstract gcc attributes 4 years ago
byte.h add compiler.h to abstract gcc attributes 4 years ago
case.h add compiler.h to abstract gcc attributes 4 years ago
cdb.h add compiler.h to abstract gcc attributes 4 years ago
cdb_make.h add compiler.h to abstract gcc attributes 4 years ago
compiler.h add compiler.h to abstract gcc attributes 4 years ago
compiletimeassert.h add compiler.h to abstract gcc attributes 4 years ago
critbit.h add compiler.h to abstract gcc attributes 4 years ago
dns.h add compiler.h to abstract gcc attributes 4 years ago
ent.c fix two complaints by clang's static analyzer 4 years ago
entities.json $ make WERROR=-Werror now builds with -Werror 11 years ago
errmsg.h make headers work in C++ 13 years ago
errmsg_int.h add errmsg_int.h 19 years ago
fmt.h add compiler.h to abstract gcc attributes 4 years ago
iarray.h add compiler.h to abstract gcc attributes 4 years ago
io.h add compiler.h to abstract gcc attributes 4 years ago
io_internal.h first_deferred actually needs to be extern all the time, not just 4 years ago
iob.h add compiler.h to abstract gcc attributes 4 years ago
iob_internal.h use callback based infrastructure to reset iob's 17 years ago
iopause.h1 for installed header files, add comment saying where they came from 15 years ago
iopause.h2 for installed header files, add comment saying where they came from 15 years ago
ip4.h get rid of more -Wconversion warnings 11 years ago
ip6.h add compiler.h to abstract gcc attributes 4 years ago
isset.h remove a few compiler warnings 8 years ago
likely.h add iarray 16 years ago
mmap.h add mmap_readat 8 years ago
ndelay.h make headers work in C++ 13 years ago
open.h add compiler.h to abstract gcc attributes 4 years ago
openreadclose.h add compiler.h to abstract gcc attributes 4 years ago
parse.h add compiler.h to abstract gcc attributes 4 years ago
rangecheck.h add compiler.h to abstract gcc attributes 4 years ago
readclose.h get rid of more -Wconversion warnings 11 years ago
safemult.h add compiler.h to abstract gcc attributes 4 years ago
scan.h add compiler.h to abstract gcc attributes 4 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 add compiler.h to abstract gcc attributes 4 years ago
str.h add compiler.h to abstract gcc attributes 4 years ago
stralloc.h add compiler.h to abstract gcc attributes 4 years ago
t.c add compiler.h to abstract gcc attributes 4 years ago
tai.h add compiler.h to abstract gcc attributes 4 years ago
taia.h add compiler.h to abstract gcc attributes 4 years ago
textcode.h add compiler.h to abstract gcc attributes 4 years ago
tryalloca.c $ make WERROR=-Werror now builds with -Werror 11 years ago
trybsdsf.c $ make WERROR=-Werror now builds with -Werror 11 years ago
trydevpoll.c broken lose32 port using mingw (don't use!!!) 21 years ago
tryepoll.c $ make WERROR=-Werror now builds with -Werror 11 years ago
tryinline.c work around compilers that don't understand "static inline" 23 years ago
tryip6.c $ make WERROR=-Werror now builds with -Werror 11 years ago
trykqueue.c add epoll and kqueue tests 22 years ago
tryn2i.c $ make WERROR=-Werror now builds with -Werror 11 years ago
trypoll.c monster update: add tai, taia, iopause, case, and ipv6 enhanced dns 23 years ago
trypread.c add pread test 9 years ago
tryscope.c $ make WERROR=-Werror now builds with -Werror 11 years ago
trysendfile.c $ make WERROR=-Werror now builds with -Werror 11 years ago
trysigio.c $ make WERROR=-Werror now builds with -Werror 11 years ago
trysl.c $ make WERROR=-Werror now builds with -Werror 11 years ago
trysocket.c $ make WERROR=-Werror now builds with -Werror 11 years ago
trysysel.c monster update: add tai, taia, iopause, case, and ipv6 enhanced dns 23 years ago
tryuint128.c add tryuing128.c and ignore haveuint128.h 11 years ago
uint16.h add fmt and scan versions of uint* 4 years ago
uint32.h add fmt and scan versions of uint* 4 years ago
uint64.h add fmt and scan versions of uint* 4 years ago
va_narg.h for installed header files, add comment saying where they came from 15 years ago
windoze.h fix some bugs that cppcheck found 11 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