Changes between sendip-0.0.1 and sendip-0.0.2 * Now compiles under libc5 as well as glibc Changes between sendip-0.0.2 and sendip-0.0.3 * New man page, taken from one supplied by rmartini Changes between sendip-0.0.3 and sendip-1.0 * Makefile no longer requires GNU make or etags * included spec file from Delvin Upton * now ship source and binary RPMs as well as source tar.gz * now compiles on FreeBSD (and hopefully Net and Open) as well as linux * minor bug fixes * added option for random header fields (idea roughly by ganesh@earth.li) * switched to 2digit versions Changes between sendip-1.0 and sendip-1.1 * Fix bug the caused incorrect tcp checksums (smitchell@realogy.com) * Add RIP-1 and RIP-2 support from Richard Polton Changes between sendip-1.1 and sendip-1.2 * Add IPv6 support from Antti Tuominen * Add (some) TCP options form Alexander Talos * Bugfixes Changes between sendip-1.2 and sendip-1.3 * Compile fix for *BSD * Various other bugfixes * Removed bogus libpcap dependancy * Now included in debian unstable, hopefully * Ready to be included in FreeBSD ports collection, hopefully * Added -h option Changes between sendip-1.3 and sendip-1.4 * Added contrib directory and wake on lan script, curtesy of Beat Bolli * RIP default option from Richard Polton Changes between sendip-1.4 and sendip-2.0-pre2 * RIP bugfix from Richard Polton * Massive code tidy up * -tr no longer affects -tfe and -tfc * TCP header length defaults to correct even if options are supplied * Setting IP checksum prints a warning as it might not work * Can now specify the version field of the IP header * -if now documented correctly * man page autobuilds from help, help is more likely to be right * TCP over IPV6 still sends the wrong checksum, but now it warns you first * Enable setting of IPV6 priority * ICMP and ICMPv6 merged as they are almost identical * RIP no longer only accepts 25 entries * BGP support from David Ball Changes between sendip-2.0-pre2 and sendip-2.0 * include string.h to avoid memcpy(), strlen() and strcpy() warnings in ipv4.c, ipv6.c, rip.c and udp.c (Antti Tuominen ) * ipv6 checksum fixes (Antti Tuominen) * BGP fixes (David Ball ) * Compiles on AIX (thanks to Parag Kukde ) * -d now supports hex, octal or binary data * man page (built automagically from hacked help2man) * finds modules correctly after a make install Changes between sendip-2.0 and sendip-2.1 * Now FHS aware (Juan Antonio Martinez ) * NTP support added (requested by John Deatherage ) * Merged ipv6_csum and icmp6csum * Use (s)random() instead of (s)rand() (Bryan Croft ) * Added -fPIC to CFLAGS to make it compile on hppa * Now compiles on Solaris (thanks to Dax Kelson ) - tidied up the build for platform specific LDFLAGS - turned off profiling - renamed our copy of getopt to gnugetopt - created types.h with bool, u_int*_t (solaris only), and endianness stuff * sendip: - searches for libraries in . as well as installed path - man page fix (pointed out by Ambar Paul ) * tcp.so: - now supports -tonum to specify arbitrary TCP options * ipv4.so: - supports (some) IP options requested by Fabrice MARIE - only checks a single layer of enclosing headers for IPV4 * bgp.so: - non-enclosure in TCP is non-fatal - doesn't segfault on platforms where static variables and .so files don't mix * rip.so: - only checks a single layer of enclosing headers for UDP * icmp.so: - only checks a single layer of enclosing headers for IPV4/IPV6 - now compiles on platforms which care about alignment Changes between sendip-2.1 and sendip-2.2 * spec file fixes (Calum Selkirk ) * FreeBSD compile fixes * Linux-PPC compile fixes * More SunOS compile fixes * Use ?= not = in Makefile to allow FreeBSD ports to work without a hack (Joseph Scott ) * Added support for RIPng over UDP/IPv6. Completely untested, I haven't even read the spec... Requested by armite * CheckSum code tidied up * tcp.so: - now supports sending TCP over IPv6 - tcp length correctly calculated (pointed out by Yuchung Cheng ) * udp.so: - now supports sending UDP over IPv6 - only checks a single layer of enclosing headers for IP * ipv6.so: - now correctly sets src and dst fields (Pekka Savola ) * ipv4.so: - ip_len now in host byte order on FreeBSD to avoid sendto: Invalid argument * rip.so: - off-by-one error causing segfaults and other badness fixed - hton* added where needed Changes between sendip-2.2 and sendip-2.3 * Now compiles on archs requiring alignment * ripng.so: - now conforms more closely to the spec (help from armite Changes between sendip-2.3 and sendip-2.4 * Random packet data payloads (Anand (Andy) Rao ) * ipv4.so: - fix bug with iossr and iolsr adding wrong ip options - ip_len really is now in host byte order on FreeBSD, so the sendto: Invalid argument thing really is fixed now. I hope. (brdraney@nersc.gov) Changes between sendip-2.4 and sendip-2.5 * Fix minor memory leaks in several places (found using valgrind) * Fix compile bug on Solaris (found by Dave Gibelli ) * tcp.so - Fix -tonum bug found by Yaniv Kaul Changes between sendip-2.5 and sendip-2.5-jel * Debian 2.5-7 fixes merged (gcc4, gcc5, clang, spelling). * Makefile uncluttered + fixes for building on Solaris with Studio Compiler/gcc * add a real man page (no man2html pain anymore) * sendip is now relocatable wrt. install location. Changes between sendip-2.5-jel and sendip-2.5-mec-0 This release incorporates the following enhancements and fixes implemented by Mark Carson (NIST) - see also https://www-x.antd.nist.gov/ipv6/sendip.html * add. header types, especially for IPv6 - AH (dummy only, IPv4 or v6) - ESP (dummy only, IPv4 or v6) - hop-by-hop or destination options (IPv6: pad0, padN, router alert, jumbo, home address, (arbitrary)) - fragment (IPv6) - GRE tunnel (IPv4 or v6) - routing (types 0, 1, 2) - IPIP (4in4), 4in6, 6in4 and 6in6 tunneling * new helper functions for random data generation, protocol name/number conversion, and forward/back header lookup * allow multiple invocation of the same header type e.g. for ipip tunnels. Argument processing changed to first attempt to apply arguments to the most recently invoked header module. * allow header modules to trim (but not increase) the total packet size in packet finalization to support e.g. ESP, which needs to pad out its trailer for alignment. * new files: ah.c ah.h esp.c esp.h frag.c frag.h gre.c gre.h headers.c hop.c hop.h ipv6ext.h parse.h parseargs.c protoname.c route.c route.h * pulled out bgp.h from bgp.c to get Makefile rules straight (jelmd) Changes between sendip-2.5-mec-0 and sendip-2.5-mec-1 This release incorporates the following enhancements and fixes implemented by Mark Carson (NIST) - see also https://www-x.antd.nist.gov/ipv6/sendip.html * Addition of Wrapped ESP (WESP) header (IPv4,6) * Support for external authentication and crypto modules for AH and ESP (IPv4,6) (demo xorauth "authentication" and xorcrypto "encryption") * Extended uniform string argument handling * outsourced module loading to modload.* and stop copying module data (jelmd) Changes between sendip-2.5-mec-1 and sendip-2.5-mec-2 * Extended uniform integer argument handling (Mark Carson, NIST) * SCTP header with some chunk/parameter support (IPv4,6) (Mark Carson, NIST) * linux based crc32 implementation used by sctp replaced by the portable, less Linux/GNU C agnostic and less bloated code published in RFC 3309 (jelmd) Changes between sendip-2.5-mec-2 and sendip-2.5-mec-3 This version merged in sendip-2.5-mec-3a1 and 3a2 (Mark Carson, NIST): * Extended uniform IP address handling, generation and CIDR notation support * new timestamp parameter * Modifications for uniform string and integer handling * Looping capability and file-based parameters to create packet streams * Replaced GNU extension/Linux agnostic, non-portable hsearch_r usage for file parameter handling with tsearch(3C) + friends (jelmd) * Simplified random byte generator, code cleanups + header re-arrangements and fixes (jelmd) Changes between sendip-2.5-mec-3 and sendip-2.6.0-jel Merged in all remaining post 2.5.0 commits (2018-04-07) from https://github.com/rickettm/SendIP master branch: * setsocket option CLI support via general option -s {b|i|6}... * use setsockopt() to set IPV6 header options * RIP requests: fix addition/handling of entries * make option handling reliable - do not allow to modify the original value by using 'const char *' (jelmd) * misc fixes + code cleanups (jelmd) Changes between sendip-2.6.0-jel and sendip-3.0.0-jel * rename aweful long function names in compact.c and merge it to parseargs.* * new option '-D {h|d}' for packet data dumps, better dumping * optn2intn(), opt2inth(): add endpointer parameter * ntp: fix endianess, fix double and timestamp serialization * sync man OPTIONS and help output with src code; make help output _short_