Reuse at layer 1
Explode cuts bits of a file out to make a
cogent subset of the that repesents only the parts you need for
a specific task. This document explains the larger files, each of
which has its own detailed page.
Explode comes with some useful example code (useful in that
ksb's tools need these to compile). As examples go they are
Here is a list of them for you to poke through:
- Adelson-Velskii Landis Height-Balanced Trees
Impress your friends with a cool sounding data structure!
These RAM-based trees provide a quick average time insert, delete, find
scheme and are very low overhead.
- Password checking code
After a Customer gives you a password (UNIX style) how do you make
sure it is the correct one? This case can tell you.
- Identd C interface (TAP)
You call getpeername(2) to find the host and port, but this might
tell you the login name (or hash name) of the connected user!
Use only as directed.
- BSD Implementation of scandir for Non-BSD systems
Just what it says. Compiles on Solaris for example.
- Sorted, unique C strings
These are really cheap, I mean really cheap.
Just a way to keep track of a list of unique strings so we
don't repeat ourself.
- Emulation code the mktmep, mkstemp, mkdtemp, and mkstemps(3)
I got sick of not having these under every OS.
- wise module support
The Web Infrastructure Service Engine (wise) ideas are too long to explain
here: it is a way to make lots of little modules to lots of work for
a website. Used by unity, rcls, rcds, stater, rico, and acld.
- credential passing
An interface on top of sendmsg and recvmsg to make sending credentials
about as painless as possible. Used my acld, and wise.
- the dicer
An interface to find the "good parts" of a well formatted string.
for example uses.
- a sparse list of large integers
A very simple interface to allow an application to record an
event by and integer value (inode number, uid, gid, or other) then
visit the list in sorted order. Takes very little memory for
sparsely populated lists, or clusters of large values.
- Pack bins with a list of integer weights
binpack to pack files by length.
- send and receive access right over domain sockets
installus and some wrappers to send
access rights (file descriptors) to peer processes.
- build a message bus of sorts between processes
Tee to push data faster with multiple
unsetenv(3)for hosts missing them
strncasecmp for hosts missing them
Portability interfaces only.
ctime(3) output back into a
Used to convert a text time back into seconds-since-the-epoch
time_t) in many programs.
Others will be added in new releases.
$Id: index.html,v 6.16 2014/04/13 19:27:00 ksb Exp $ by ksb.