$Id$ 02/09/2005: Version 2.3.3 - Fix port rewriting feature on little-endian systems - configure now properly handles --with-libnet and --with-libpcap 11/08/2004: Version 2.3.2 - When sending via -1, report which interface the packet will exit - Fix bug when caplen > packet len - Allow rewriting of Layer 2 via -2 for Cisco HDLC (DLT_CHDLC) 09/19/2004: Version 2.3.1 - Fix bug with fakepcap.c which appeared on systems using an older version of libpcap (such as Red Hat 9.0) - Don't die when setting STDERR to non-blocking 09/05/2004: Version 2.3.0 - Fix longstanding endian bug in cache files on little endian systems (note that this breaks compatibility w/ existing cache files created on little endian systems) - Add support to tcpreplay and tcpprep for DLT_CHDLC (Cisco HDLC) - Clean up validate_l2() and rewrite_l2() - Write a simple perl script to parse net/bpf.h of DLT values - Teach everything the names of all the current DLT values - Detect if libpcap supports pcap_datalink_val_to_description() - Start printing datalink descriptions instead of DLT values - Remove magic numbers from tcpreplay.c - Add a HACKING document 06/21/2004: Version 2.2.2 - tcpprep now supports DLT_RAW and DLT_LINUX_SLL - add makefile target for website docs (FAQ.html, FAQ.pdf, CHANGELOG) - Fix some sanity checks in tcpreplay for processing various DLT types in validate_l2() - Fix -x & -X - Merge in patch from Denis which rewrites TCP/UDP ports via -4 - Fix rewrite of source MAC address in single interface mode (bug #975848) 05/16/2004: Version 2.2.1 - Fix compile issue under RH9 - Fix compile issue when not using --with-debug 05/15/2004: Version 2.2.0 - Fix pseudo-NAT (not evaluating all rules and an infinate loop) - Start using strtok_r() in any function to prevent future bugs - Minor updates to tcpprep.1 & tcpreplay.8 man pages - Re-org some functions into different files for better modularity - Clean up of some of the cache comment code - flowreplay man page moved to section 1 - Update tcpprep and tcpreplay man pages and the FAQ - Improve documentation regarding pseudo-NAT feature - Fix one output mode which treated all packets as primary - Add endpoint mode (-e) which rewrites all traffic between two IP's - Fix rewrite of IP addresses in ARP requests & replies w/ pseudo-NAT - Fix CIDR matching of 0.0.0.0/0 (all packets) which matched only 255.255.255.255 - All CIDR notation now accepts IP addresses w/o requiring /32 - non-debug mode now uses -O3 -funroll-loops for better performance 05/01/2004: Version 2.1.1 - Fix ntohll/htonll compile error on big endian systems 04/23/2004: Version 2.1.0 - Add support for per output interface/file NAT tables - Add support for using dual output features w/ a single output - Add support to tcpprep for splitting via destination port - Now fully 64bit when tracking number of packets - Fix a bug where sometimes the last few packets are not sent when using a tcpprep cache file - Some code refactorization/cleanup - tcpprep cache files now support user comments - Fix bug where regex optimization was turned always turned off 03/24/2004: Version 2.0.3 - Add support for rewriting src mac & Linux SLL loopback frames - Update FAQ 02/25/2004: Version 2.0.2 - Fix compile issue in edit_packet.c on strict aligned archs 02/03/2004: Version 2.0.1 - Re-organize FAQ and add more content - Add support for "pseudo NAT" (-N) for ARP and IPv4 - Code optimization to only run the checksum fixer once per packet - Clean up help (-h) a little 02/01/2004: Version 2.0.0 - Remove libpcapnav requirement - Now support libpcapnav >= 0.4 - Add -1 to replay one packet at a time (user must hit ) - Add tcpdump packet parsing to print packets as sent (-v) - Place flowreplay manpage in correct location - More FAQ updates - Rename 1.5.x as 2.0 - Fix/standardize all licensing info. Still BSD of course. - -T now forces -F - tcpprep now actually accepts -n (client|server) - Update the INSTALL doc - Remove the Docs/README... the FAQ has replaced it. 12/10/2003: Version 1.5.alpha6 - Add BPF filter support to tcpprep and tcpreplay (-x F:"filter") - Update the FAQ - Add two new auto modes to tcpprep (client and server) - Make clean no longer wipes out the compiled documentation in Docs - Add support for replaying live traffic - Add bridge mode - Add -L to limit the total number of packets to send 11/03/2003: Version 1.5.alpha5 - Add -T to truncate packets > MTU so they can be sent - Now fixes ICMP checksums as appropriate - Updated FAQ - Updated flowreplay design doc - Merge packetrate code from 1.4.5 - Fix compile issues under Libnet 1.1.1 - --with-debug now enables debuging during 'make test' - Fix various Solaris compatibility bugs - Add data dump mode which dumps layer 7 data to the file (-D) - Now requires libpcapnav - Allow to jump X bytes into the pcap and start replaying packets (-o) - Can now split traffic/data into files (-w & -W) 07/16/2003: Version 1.5.alpha4 - Split do_packets.c & do_packets() -> edit_packet.c & rewrite_l2() - Don't die when packet > MTU, just skip - Fix a ptr bug in do_packets() w/ the ethernet header - Merge Ctrl-C fix from 1.4.4 for libnet_adv_write_link() in do_packets.c - Rewrite flowreplay design document - Fix an integer overflow in packet_stats() in tcpreplay.c - tcpreplay's -2 now accepts a hex string rather then a filename - tcpreplay now can output to a file (-w ) - fix bug in checksum fixer - Add support for files > 2GB 06/06/2003: Version 1.5.alpha3 - Add support for Linux Cooked Sockets (SLL) format rewriting - Added a flowreplay design doc in Docs/ - A lot more work on flowreplay - Start work on read-ahead buffering of packets in flowreplay - Add support for specifying MTU. - Update tcpreplay man page - Fix compile of do_packets() under OpenBSD - configure now checks for libpcap >= 0.6 (required for SLL) 05/29/2003: Version 1.5.alpha2 - Add -F to force checksum fixing - Fix packet corruption when not using -2 - Improve timerdiv() code - Port from libredblack to OpenBSD RB_* - Add flowreplay application - Fix a bunch of compiler warnings about miss-matched sign - IP & layer 4 checksums now work when IP options exist (tcpreplay) - Updated FAQ - Fix spec file 05/07/2003: Version 1.5.alpha1 - Add layer2 rewriting 05/07/2002: Branch 1.4.x tree 05/04/2003: Version 1.4.beta5 - Fixed a one-off bug when replaying tcpprep cache files - Fixed a small reporting bug in tcpprep 05/02/2003: Version 1.4.beta4 - significantly improved timing accuracy between packets - fix bug with writing only about 1/2 of cache data which caused tcpreplay to bitch - updated 'make test' standard cache files - improved alignment of cache header (20bytes vs 17bytes) 04/30/2003: Version 1.4.beta3 - Specifying a list of packets to include/exclude now works (-x/X P:) - Minor code cleanups (better error messages, etc) - Add -p option to pause a given number of sec/usec between each packet - Ported tcpprep to libpcap - Increase final report resolution to two sig digits - Switch to err.h that we ship rather then system provided err.h - Don't reset timer each time we open a file for reading - fix --mandir option for ./configure - fix SIGSEGV in tcpprep - Add SIGUSR1 and SIGCONT signal support to tcpreplay - Updated tcpreplay man pages - Remove need for math.h/libm 01/07/2003: Version 1.4.beta2 - Major updates to configure script - Remove unneeded memcpy() for non-strict aligned architectures for added performance boost - Switch to libpcap for reading packets - Fix portability issues with tcpprep cache files 12/23/2002: Version 1.4.beta1 - Remove libnet 1.0 support - Start a quality FAQ for all programs - Add support for detecting libpcap in autoconf - Add pcapmerge to makefile and port to non-BSD OS's - Write pcapmerge manpage - Variety of small configure/makefile improvements 12/13/2002: Version 1.3.0 - Re-release 1.3.beta6 as 1.3.0 11/22/2002: Version 1.3.beta6 - Improve cross platform compatibility of test subsystem - Fix bug in Makefile which caused possible failures of clean/distclean - Fix bug with CCFLAGS when using --with-debug - Fix bug with -x/-X which would drop/send all packets in certain conditions - Update libredblack to 1.2 (latest) - Add support for OSX - Add --with-testnic and --with-testnic2 to allow end user to specify specific network cards to be used for 'make test' - Fixes SIGBUS errors on SPARC 11/08/2002: Version 1.3-beta5 - Add testing subsystem - Fix segfault when we don't send a packet - Improve debug output support in dbg() 10/21/2002: Version 1.3-beta4 - Updated tcpprep man page with -x and -X options - Now supports (again) the include/exclude options in the config file - Fixed -x|-X sanity check in tcpprep/tcpreplay 10/13/2002: Version 1.3-beta3 - Fix compile of list.c under FreeBSD 4.7 and others - Add -x|-X to tcpprep - Modify cache file format to be 2 bits/packet to allow caching of -x|-X args (dropping packets) - Modularize some more code 10/08/2002: Version 1.3-beta2 - Fix ./configure bug w/ INET_ATON and INET_ADDR - Add support for filtering packets to send based on IP address or packet number (-x & -X) - Move a lot of code from tcpreplay.c to do_packets.c - Update tcpreplay man page 10/03/2002: Version 1.3-beta1 - Add support for randomizing IP addresses (-s) - Update tcpreplay man page - Fix problem with checksums after untruncate 08/21/2002: Version 1.2a - Fix compile bug in tree.c w/ libnet 1.1 - Sync tcpprep version to tcpreplay 08/19/2002: Version 1.2 - Configuration files specified via -f - Now requires a recent version of AutoConf (2.53) - Added support for Libnet 1.1.x (requires beta8 or better) - Added -V switch to print version info (tcpprep & tcpreplay) - Added CIDR dual-nic support to tcpreplay. - Fix for -I in tcpreplay when only using a single NIC. - Remove requirement for libpcap in tcpprep. We're now 100% libpcap independant. - tcpprep now supports snoop files. - Added -u flag to untruncate IP packets (pad/trunc) - Fixed --with-debug configure option - Added RPM .spec file - Added -M flag to ignore martian IP packets - Now auto-detects snoop/pcap files. Remove -S flag from tcpprep and tcpreplay - tcpprep now detects servers via ICMP port unreachable - Improve usefulness of -h - Rename -I to -v in tcpprep 06/17/2002: Version 1.1 - Major rewrite - Support multiple nics - Better control over packet rates - Added support for snoop capture files - Includes tcpprep and capinfo commands