Mirror of :pserver:cvs@cvs.fefe.de:/cvs libowfat https://www.fefe.de/libowfat/
 
 
 
Go to file
Felix von Leitner 5ce2f8743c make unit tests self contained 2020-10-30 14:36:05 +00:00
array half-hearted improvements to Windows compilability 2019-04-23 13:25:26 +00:00
buffer make unit tests self contained 2020-10-30 14:36:05 +00:00
byte add byte_start, byte_starts 2020-10-22 20:43:13 +00:00
case #include <foo.h> -> #include <libowfat/foo.h> 2017-05-13 22:51:26 +00:00
cdb fix memory leak in error path 2020-07-14 16:08:08 +00:00
critbit #include <foo.h> -> #include <libowfat/foo.h> 2017-05-13 22:51:26 +00:00
dns use write in buffer_put for a slight perf improvement 2018-03-12 13:04:30 +00:00
examples include <foo> -> include "foo" 2016-03-17 11:13:23 +00:00
fmt add man pages for fmt_copybytes and fmt_copybytes_sizeof_minus1 2020-07-14 19:55:38 +00:00
io port the epoll optimizations to kqueue, hopefully repairing it in the process 2020-05-15 11:42:53 +00:00
mmap make mmap_private on Windows work on read-only files, too 2019-05-07 16:18:59 +00:00
mult move unit tests into each file (compile with -DUNITTEST) 2017-05-13 22:52:21 +00:00
open #include <foo.h> -> #include <libowfat/foo.h> 2017-05-13 22:51:26 +00:00
scan remove compiler warnings in ent 2020-05-14 14:46:31 +00:00
socket less warnings 2019-02-21 12:39:44 +00:00
str add unit test 2018-09-30 19:29:31 +00:00
stralloc #include <foo.h> -> #include <libowfat/foo.h> 2017-05-13 22:51:26 +00:00
tai #include <foo.h> -> #include <libowfat/foo.h> 2017-05-13 22:51:26 +00:00
taia #include <foo.h> -> #include <libowfat/foo.h> 2017-05-13 22:51:26 +00:00
test add libowfat/ to includes 2019-04-27 09:15:53 +00:00
textcode fix two complaints by clang's static analyzer 2020-06-16 12:40:57 +00:00
uint #include <foo.h> -> #include <libowfat/foo.h> 2017-05-13 22:51:26 +00:00
unix use write in buffer_put for a slight perf improvement 2018-03-12 13:04:30 +00:00
.cvsignore put includes into <libowfat/*.h> 2017-03-13 11:10:28 +00:00
CAS.h remove a few compiler warnings 2017-04-28 13:55:00 +00:00
CHANGES add byte_start, byte_starts 2020-10-22 20:43:13 +00:00
COPYING Initial revision 2001-02-02 17:54:47 +00:00
GNUmakefile add static analyzer targets 2020-07-14 16:08:26 +00:00
Makefile half-hearted Windows compilability improvements 2019-04-23 13:22:07 +00:00
README mention my email address 2002-10-21 22:35:17 +00:00
TODO fix for NetBSD 3.0 (they broke their sys/types.h) 2006-06-23 03:53:16 +00:00
array.h make headers work in C++ 2012-02-07 17:02:40 +00:00
buffer.h add buffer_peekc 2020-10-30 00:26:41 +00:00
byte.h give __readmem__ its own #ifndef 2020-10-27 20:43:09 +00:00
case.h make headers work in C++ 2012-02-07 17:02:40 +00:00
cdb.h make headers work in C++ 2012-02-07 17:02:40 +00:00
cdb_make.h make headers work in C++ 2012-02-07 17:02:40 +00:00
compiletimeassert.h try to work with gcc 8.3, too 2020-04-17 07:50:37 +00:00
critbit.h make critbit0_contains as pure 2015-04-09 23:35:40 +00:00
dns.h get rid of more -Wconversion warnings 2014-03-14 19:42:54 +00:00
ent.c fix two complaints by clang's static analyzer 2020-06-16 12:40:57 +00:00
entities.json $ make WERROR=-Werror now builds with -Werror 2014-03-13 22:25:20 +00:00
errmsg.h make headers work in C++ 2012-02-07 17:02:40 +00:00
errmsg_int.h add errmsg_int.h 2005-10-14 15:33:33 +00:00
fmt.h add man pages for fmt_copybytes and fmt_copybytes_sizeof_minus1 2020-07-14 19:55:38 +00:00
iarray.h half-hearted Windows compilability improvements 2019-04-23 13:22:07 +00:00
io.h BSD build fix (hopefully) 2019-02-21 12:24:05 +00:00
io_internal.h first_deferred actually needs to be extern all the time, not just 2020-08-10 01:40:40 +00:00
iob.h BSD build fix (hopefully) 2019-02-21 12:24:05 +00:00
iob_internal.h use callback based infrastructure to reset iob's 2007-10-17 13:25:44 +00:00
iopause.h1 for installed header files, add comment saying where they came from 2010-06-03 22:46:59 +00:00
iopause.h2 for installed header files, add comment saying where they came from 2010-06-03 22:46:59 +00:00
ip4.h get rid of more -Wconversion warnings 2014-03-14 19:42:54 +00:00
ip6.h get rid of more -Wconversion warnings 2014-03-14 19:42:54 +00:00
isset.h remove a few compiler warnings 2017-04-28 13:55:00 +00:00
likely.h add iarray 2009-03-12 21:32:43 +00:00
mmap.h add mmap_readat 2016-07-14 16:19:47 +00:00
ndelay.h make headers work in C++ 2012-02-07 17:02:40 +00:00
open.h make headers work in C++ 2012-02-07 17:02:40 +00:00
openreadclose.h make headers work in C++ 2012-02-07 17:02:40 +00:00
parse.h make unit tests self contained 2020-10-30 14:36:05 +00:00
rangecheck.h half-hearted Windows compilability improvements 2019-04-23 13:22:07 +00:00
readclose.h get rid of more -Wconversion warnings 2014-03-14 19:42:54 +00:00
safemult.h remove a few compiler warnings 2017-04-28 13:55:00 +00:00
scan.h add a few helpers for parsing binary data 2020-10-29 23:25:54 +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 add socket_udp4b and socket_udp6b 2015-10-16 17:12:22 +00:00
str.h make headers work in C++ 2012-02-07 17:02:40 +00:00
stralloc.h support gcc 10's access attribute when compiling with dietlibc 2020-04-01 17:10:26 +00:00
t.c remove failing assert that failed build 2020-04-16 17:33:09 +00:00
tai.h make headers work in C++ 2012-02-07 17:02:40 +00:00
taia.h make headers work in C++ 2012-02-07 17:02:40 +00:00
textcode.h support gcc 10's access attribute when compiling with dietlibc 2020-04-01 17:10:26 +00:00
tryalloca.c $ make WERROR=-Werror now builds with -Werror 2014-03-13 22:25:20 +00:00
trybsdsf.c $ make WERROR=-Werror now builds with -Werror 2014-03-13 22:25:20 +00:00
trydevpoll.c broken lose32 port using mingw (don't use!!!) 2003-11-06 20:47:59 +00:00
tryepoll.c $ make WERROR=-Werror now builds with -Werror 2014-03-13 22:25:20 +00:00
tryinline.c work around compilers that don't understand "static inline" 2001-11-24 20:09:31 +00:00
tryip6.c $ make WERROR=-Werror now builds with -Werror 2014-03-13 22:25:20 +00:00
trykqueue.c add epoll and kqueue tests 2003-09-06 00:52:11 +00:00
tryn2i.c $ make WERROR=-Werror now builds with -Werror 2014-03-13 22:25:20 +00:00
trypoll.c monster update: add tai, taia, iopause, case, and ipv6 enhanced dns 2002-09-16 01:09:56 +00:00
trypread.c add pread test 2016-06-23 19:43:00 +00:00
tryscope.c $ make WERROR=-Werror now builds with -Werror 2014-03-13 22:25:20 +00:00
trysendfile.c $ make WERROR=-Werror now builds with -Werror 2014-03-13 22:25:20 +00:00
trysigio.c $ make WERROR=-Werror now builds with -Werror 2014-03-13 22:25:20 +00:00
trysl.c $ make WERROR=-Werror now builds with -Werror 2014-03-13 22:25:20 +00:00
trysocket.c $ make WERROR=-Werror now builds with -Werror 2014-03-13 22:25:20 +00:00
trysysel.c monster update: add tai, taia, iopause, case, and ipv6 enhanced dns 2002-09-16 01:09:56 +00:00
tryuint128.c add tryuing128.c and ignore haveuint128.h 2013-08-22 23:45:52 +00:00
uint16.h add fmt and scan versions of uint* 2020-07-14 18:11:59 +00:00
uint32.h add fmt and scan versions of uint* 2020-07-14 18:11:59 +00:00
uint64.h add fmt and scan versions of uint* 2020-07-14 18:11:59 +00:00
va_narg.h for installed header files, add comment saying where they came from 2010-06-03 22:46:59 +00:00
windoze.h fix some bugs that cppcheck found 2014-05-07 23:51:24 +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