Welcome to the wonderful world of Packet Purgatory, where the packets
you send are exactly what you want them to be, but you can still use your
favorite web browser!

Installation instructions are in the INSTALL file, but the short version
is that old standby: configure, make, make install
You will need libpcap and libdnet to compile.

A quick how-to:

Packet purgatory based programs are centered around their packet
handling routines. The user linking to libpacketp must specify
inbound and outbound handlers for each packet, along with a pointer to 
some structure which can be used to share state. (If no state is needed,
a NULL pointer may be passed).

There are two required calls to use libpacketp. They are:
struct packetp_ctx *packetp_init(), which returns a pointer to
the context which stores settings and internal handles, and
int packetp_start(struct packetp_ctx *context, packet_handler inbound,
		  packet_handler outbound, void *user_state)
packetp_start actually begins the packet purgatory process, and will
not return during normal operation.

The other packet purgatory calls modify the context to change settings.
They are only required if the default context settings aren't what you want.

Send comments/questions to tmacd@synacklabs.net

