1
0
Aaron Turner 59f71d26a3 Import upstream version 3.4.4 vor 14 Jahren
..
LICENSE 16745a8624 Import upstream version 3.3.1 vor 16 Jahren
Makefile.am 6dd271a201 Import upstream version 3.4.3 vor 15 Jahren
Makefile.in 59f71d26a3 Import upstream version 3.4.4 vor 14 Jahren
README 16745a8624 Import upstream version 3.3.1 vor 16 Jahren
argv.c 16745a8624 Import upstream version 3.3.1 vor 16 Jahren
argv.h 16745a8624 Import upstream version 3.3.1 vor 16 Jahren
bget.c 16745a8624 Import upstream version 3.3.1 vor 16 Jahren
bget.h 16745a8624 Import upstream version 3.3.1 vor 16 Jahren
fragroute.c 6dd271a201 Import upstream version 3.4.3 vor 15 Jahren
fragroute.h 59f71d26a3 Import upstream version 3.4.4 vor 14 Jahren
iputil.c 6dd271a201 Import upstream version 3.4.3 vor 15 Jahren
iputil.h 6dd271a201 Import upstream version 3.4.3 vor 15 Jahren
mod.c 59f71d26a3 Import upstream version 3.4.4 vor 14 Jahren
mod.h 16745a8624 Import upstream version 3.3.1 vor 16 Jahren
mod_delay.c 16745a8624 Import upstream version 3.3.1 vor 16 Jahren
mod_drop.c 16745a8624 Import upstream version 3.3.1 vor 16 Jahren
mod_dup.c 16745a8624 Import upstream version 3.3.1 vor 16 Jahren
mod_echo.c 16745a8624 Import upstream version 3.3.1 vor 16 Jahren
mod_ip6_opt.c 6dd271a201 Import upstream version 3.4.3 vor 15 Jahren
mod_ip6_qos.c 6dd271a201 Import upstream version 3.4.3 vor 15 Jahren
mod_ip_chaff.c 6dd271a201 Import upstream version 3.4.3 vor 15 Jahren
mod_ip_frag.c 6dd271a201 Import upstream version 3.4.3 vor 15 Jahren
mod_ip_opt.c 6dd271a201 Import upstream version 3.4.3 vor 15 Jahren
mod_ip_tos.c 6dd271a201 Import upstream version 3.4.3 vor 15 Jahren
mod_ip_ttl.c 6dd271a201 Import upstream version 3.4.3 vor 15 Jahren
mod_order.c 16745a8624 Import upstream version 3.3.1 vor 16 Jahren
mod_print.c 6dd271a201 Import upstream version 3.4.3 vor 15 Jahren
mod_tcp_chaff.c 6dd271a201 Import upstream version 3.4.3 vor 15 Jahren
mod_tcp_opt.c 6dd271a201 Import upstream version 3.4.3 vor 15 Jahren
mod_tcp_seg.c 6dd271a201 Import upstream version 3.4.3 vor 15 Jahren
pkt.c 6dd271a201 Import upstream version 3.4.3 vor 15 Jahren
pkt.h 6dd271a201 Import upstream version 3.4.3 vor 15 Jahren
randutil.c 1bb6d0e15f Import upstream version 3.4.1 vor 15 Jahren
randutil.h 16745a8624 Import upstream version 3.3.1 vor 16 Jahren

README

This code is heavily based on, even stolen from Dug Song's excellent fragroute
utility. I've taken a perfectly good application and converted it into a
packet editing library for my own needs. Any bugs are my fault. Any praises
really should go to Dug.

Please consider all files here under the original fragroute LICENSE, with the
added caveat that any changes are:

Copyright 2008, Aaron Turner


Notes:
Fragroute runs as a daemon which intercepts packets by modifying the host
operating systems routing table, redirecting packets destined to the target
IP over the loopback interface. Packets reaching the loopback interface
are then read using libpcap/BPF filter processed according to the fragroute
rule set and then resent out the configured interface.

libfragroute works differently. First, we do away with any changes to the
host routing table. Secondly, packets are not sent out any interface, but
are read back by the caller. The API should look something like this:

ctx = fragroute_init(mtu, ); // init library

// process a packet
fragroute_process(ctx, char *pktbuff, int pktsize)

// read resulting fragments
while ((ret = fragroute_read(ctx, char **fragment)) > 0) {
// do something with fragment
} else {
// no more fragments
}