File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / hping2 / CHANGES
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Tue Feb 21 22:11:37 2012 UTC (12 years, 3 months ago) by misho
Branches: hping2, MAIN
CVS tags: v2_0_0rc3p7, v2_0_0rc3p5, v2_0_0rc3p4, v2_0_0rc3p0, v2_0_0rc3, HEAD
hping2

    1: CHANGES LOG
    2: $Id: CHANGES,v 1.1.1.1 2012/02/21 22:11:37 misho Exp $
    3: 
    4: Authors name abbreviation
    5: 
    6: AZ 	Salvatore Sanfilippo 'antirez'		<antirez@speedcom.it>
    7: FX 	Alfonso De Gregorio 'fhex'		<fhex@speedcom.it>
    8: MK 	Mika					<mika@qualys.com>
    9: SA	Stephane Aubert				<Stephane.Aubert@hsc.fr>
   10: NJ	Nicolas Jombart				<Nicolas.Jombart@hsc.fr>
   11: DD	Denis Ducamp				<Denis.Ducamp@hsc.fr>
   12: FP	Francesco Potorti`			<pot@gnu.org>
   13: YB	Yann Berthier				<Yann.Berthier@hsc.fr>
   14: BJ	Brieuc Jeunhomme			<bbp@via.ecp.fr>
   15: HK	Hans-Joachim Knobloch			<knobloch@secorvo.de>
   16: MM	Minor contributor, see the change description for credits.
   17: ??	If you edit this file put yourself here	<your@email>
   18: 
   19: AZ is the default if not specified.
   20: 
   21: =======================================================
   22: In order to find bugs fixed search the keyword 'FIX:'
   23: for new supports and features search the keyword 'ADD:'
   24: =======================================================
   25: 
   26: TO FIX before ??:
   27: * The problem with --rroute and the IP header length field on SunOS,
   28:   thanks to Graeme Hewson <graeme.hewson@oracle.com> for reporting it.
   29: 
   30: MM FIX: Fix for interface guessing with aliases on BSD
   31: 	Thanks <michel.gravey(@)orange.fr> and <cognet(@)freebsd.org>
   32: MM FIX: fixed cksum.c. Bad outgoing packet checksum with some packet.
   33: 	Thanks to Brett Eldridge <beldridg@pobox.com>.
   34: AZ ADD: scan mode (--scan)
   35: AZ ADD: A rc4-based PRNG to use with --rand-source and --rand-dest
   36: NJ FIX: Fix -I option for BSD/Apple
   37: NJ ADD: Add support for BSDI and MacOSX (thanks 
   38:         Dennis Opacki <dopacki@adotout.com> and Jan-Hinrich Fessel 
   39:         <Jan-Hinrich.Fessel@T-Mobile.de>)
   40: HK ADD: A few useful ICMP options
   41: NJ ADD: Add support for :
   42: 	WLAN (Fabian Melzow <biop0b@web.de>)
   43: 	ATM (Debian bug #193436, thanks to Domenico Andreoli)
   44: 	Token Ring (jim.r.halfpenny@britishairways.com)
   45: NJ ADD: MacOSX patches (Hans-Joachim Knobloch <knobloch@secorvo.de>)
   46: NJ FIX: --rand-source patches from Quentin Garnier <hping@quatriemek.com>
   47: 	. ensure randomness
   48: 	. do not stop on errors when using a E or D class address (BSD only?)
   49: 
   50: 20 Nov 2002 -- 2.0.0 stable -- candidate release 2
   51: ---------------------------------------------------------------------------
   52: 
   53: NJ FIX: The bug about port number printing in TCP mode than YB discovered.
   54: NJ ADD: MTU value sanity check in option parsing.
   55: NJ FIX: Fix the use of -W option
   56: NJ ADD: strLcpy() function taken from OpenBSD
   57: NJ FIX: Fix a bug when using BSD and a PPP link as a default route
   58:         Move code from routing sockets to get_output_if function.
   59: BJ FIX/ADD: source routing and random bugfixes. Thanks BJ!
   60: AZ ADD: --rand-source for random source addresses.
   61: AZ FIX: all the atoi() call was replaced with strto[u]l().
   62: MM FIX: seq/ack setting using strtoul() instead of atoi(), thanks
   63:         to Shachar Shemesh <sun@consumer.org.il>.
   64: AZ ADD: --rand-dest for random destination addresses + manpage update.
   65: AZ FIX/ADD: Major code rewrite.
   66: AZ FIX: DF added to the icmp and udp output.
   67: AZ FIX: --port ++<base> fixed with UDP and enhanced for TCP/UDP. Now the
   68:         packets matches only with a sport that is:
   69: 	>= base_dest_port AND <= current_dest_port.
   70: 	Thanks to David Bar <dbar@Checkpoint.com> for the original
   71: 	report.
   72: 
   73: 15 Aug 2001 -- 2.0.0 stable -- candidate release 1
   74: ---------------------------------------------------------------------------
   75: 
   76: AZ FIX: --fast now really sends 10packets/second, not 100. Thanks
   77: 	to DD for the report.
   78: AZ FIX: bzero/bcopy replaced with the sane memset/memcpy.
   79: DG ADD: Solaris port, with the help of the patch contributed by
   80:         Steve Bleazard <steve@bleazard.com>
   81: AZ ADD: Changed a bit the format (flags=S is now <S>) and add the string
   82:         DF if the don't fragment bit is on.
   83: AZ FIX: waitpacket.c to take the data aligned. Now hping seems to
   84:         work without problems on linux/sparc.
   85: AZ FIX: getifname.c, now even the linux version behaves better locking
   86:         for the interface address of the outgoing interface according
   87: 	to the kernel routing table. getdefaultif.c removed, no loger used.
   88: AZ FIX --tr-stop enhanced (now really exit when an expected packet that
   89:          was not an ICMP time exceeded was received)
   90: AZ FIX: --stop-tr is now --tr-stop. All the traceroute mode options
   91:         starts with --tr.
   92: AZ ADD: --tr-no-rtt to turn off RTT information in traceroute mode.
   93:         Thanks to Denis Ducamp for the idea.
   94: AZ FIX: Now provide traceroute RTT information even with ICMP.
   95: AZ ADD: --stop-tr stops hping in traceroute mode once the first non
   96:         ICMP packet is received. Thanks to Denis Ducamp for the idea.
   97: AZ ADD: ICMP subnet address mask support. Not tested.
   98: AZ ADD: TCP timestamp support with HZ and uptime guessing (--tcp-timestamp)
   99: AZ ADD: ICMP timestamp support (--icmptype 13)
  100: AZ FIX: Fixed getlhs.c under BSD to get the header length from the like type.
  101: YB NH AZ FIX: ICMP ID handling on systems with 32 bit pids.
  102: DD ADD: Man page update (not french one!)
  103: AZ ADD: --traceroute now prints RTT information.
  104: AZ ADD: --traceroute now implies --ttl 1 if no --ttl option is specified.
  105: AZ ADD: --fast option that is an alias for -u i10000 (10 packets at second)
  106: MM ADD: ets.* interface (thanks to Stefano Brandimarte.)
  107: AZ FIX: compilation problem (NULL used without including stdlib.h in getusec.c)
  108: AZ FIX: -H switch (alternative to --protoip) thanks to
  109:       "roy kozzer" <royk50@hotmail.com>
  110: MM FIX: Man page grammatical mistakes, thanks to Jason Lunz <j@trellisinc.com>,
  111:      I applied the patch by hand, so maybe some mistake is still inside.
  112: FP FIX: fixed rtt/sequence number handling, now hping2 can run for hours
  113:         keeping the right rtt calculation. Some sentence from the original
  114: 	Francesco's email:
  115: 
  116: I am  using it to make long  measurements of the response  times of http
  117: servers around the world, so hping2 keeps running for days.  In fact, it
  118: is apparently impossible to use  hping2 this way, as the sequence number
  119: wraps around (and  this may be okay, in principle)  and the program goes
  120: astray.
  121: 
  122: Precisely, the delay measurements are set  to 0 after  the wrap around.
  123: Since  hping2 is  written so  cleanly (thanks),  I was  able  to quickly
  124: correct the problem:
  125: (strange, I think hping2 is very hugly code... I wrote it with
  126:  too little coding experience)
  127:  
  128: BTW now the issue is fixed, MANY thanks to Francesco Portori'.
  129: 
  130: DD FIX: -seqnum (endianess IIRC) fixed.
  131: DD FIX: Random fix to manpage and code.
  132: NJ FIX/ADD: BSD network interfaces related code.
  133: DD ADD: French translation of the hping documentation, under docs/french/
  134: 
  135: 6 July 2000 -- 2.0.0 beta54, raw IP mode, bug fixing, NetBSD support, ...
  136: ---------------------------------------------------------------------------
  137: 
  138: Solaris support still not present, a patch was provided by
  139: Lorenzo Lazzieri but I did not have a solaris box to perform
  140: some test, give me some solarix 2.[67] root account if you
  141: need hping2 ported to solaris. Sorry, but my sparc S4 died
  142: not long ago.
  143: 
  144: FIX: the stupid nop.c no longer exist.
  145: FIX: tcp sequence number and ack visualization bug for lacks of ntohl()!
  146: FIX: minor coding bugs fixed, minor code cleanup
  147: FIX: man pages path now is obtained from MANPATH
  148: FIX: new *BSD ethernet under getlhs.c
  149: ADD: NetBSD support (thanks to Yann Berthier)
  150: ADD: settable checksum
  151: ADD: now TCP sequence number and ack are settable.
  152: SA ADD: bad checksum option (-b --badcksum).
  153: ADD: settable fragment offset.
  154: ADD: raw IP mode.
  155: ADD: out of sequence packets counter (only with -r option).
  156: ADD: documentation updated and a bit improved.
  157: 
  158: 20 Nov 1999 -- 2.0.0 beta 53, important bug fixed
  159: -------------------------------------------------
  160: 
  161: Contrary to my hope this beta go out without Solaris support nor deep
  162: testing under BSD systems. This because beta-53 FIX: some important bugs
  163: so I think it's better to release it as soon as possible. I hope that
  164: beta-54 will be more tested under BSD and will contain a first Solaris
  165: support. Please, send me bug report/suggestions first beta-54 release, AZ
  166: 
  167: AZ ADD: man page updated.
  168: AZ FIX: a very dirty bug introduced in hping2-beta49, it was in waitpacket.c,
  169:    all offset was computed using the ip header length of the last packet, and
  170:    for the first incoming packet using uninitialized bytes. I suggest you
  171:    upgrade ASAP.
  172: AZ ADD: enhanced configure and Makefile. Now "./configure; make" should
  173:    be enough at least under Linux, FreeBSD and OpenBSD. configure has options,
  174:    try ./configure --help. Also FIX: a `make clean' issue.
  175: AZ FIX: a bug in rtt.c, in some circumstance it returned a negative rtt,
  176:    also ADD: an initial sanity check for faster problem tracing in rtt.c.
  177:    Now sent packets are registered into 'delay table' *before* of sending, I
  178:    think this isn't the better way to do a good timing, but since original ping
  179:    program use this way and it avoids some problem hping now use this solution.
  180: AZ FIX: parseoptions.c, some parser fix and more limits for non root users.
  181: AZ ADD: better hgetopt.c, now it's possible to combine short options like
  182:    -S -F etc in -SF. The same kind of bug seems still unfixed in gcc and ssh.
  183: AZ if_promisc.c no longer compiled/linked since it isn't used by hping2.
  184:    I leave this file here for possible future new features. It will be needed
  185:    only for Linux since to set promiscuous mode with libpcap it is not useful.
  186: AZ ADD:/FIX: getlhs.c updated, now system dependent, BSD ethernet names
  187:    updated thx to Rui Miguel Barbosa Machado <rmbm@rccn.net>,
  188:    FIX: BSD PPP link header size (I hope). Please send me a mail if you
  189:    successfully run hping2 under PPP interface on BSD.
  190: AZ ADD: new `utils' directory added and the simple utility hex2bin
  191: AZ ADD: distribution enhanced, CHANGES was extracted from TODO, MIRRORS contain
  192:    a mirrors list, BUGS the bug report form, others files added.
  193: 
  194: 16 Nov 1999 -- 2.0.0 beta 52, first public 2.0.0
  195: -------------------------------------------------
  196: 
  197: AZ add W option for windoze byte ordering
  198: AZ clearest var names
  199: AZ fix incoming packet size computing
  200: AZ add -V verbose mode
  201: AZ add -D debug mode
  202: AZ add support for 2.2.x kernel PF_PACKET socket
  203: AZ fix (null) hostname problem
  204: AZ add usec interval support for -i option
  205: AZ fix -q option
  206: AZ add -y (don't fragment) option
  207: AZ better checksum algorithm from R. Stevens
  208: AZ better icmp logging
  209: AZ add capability of sending data besides header (-d)
  210: AZ add fragmentation capability even with -d option
  211: AZ add ICMP support
  212: AZ get default routing interface from /proc
  213: AZ add -k (keep still source port) option
  214: AZ add UDP support
  215: AZ all #define revisited for more cleanness
  216: AZ recvto() incoming packet max size fixed
  217: AZ data from file option
  218: AZ hex dump of incoming packets
  219: AZ incoming packets content dump (only printable)
  220: AZ packet sign
  221: AZ hgetopt.c, rewrite parse_options using hgetopt()
  222: AZ GNU style options support
  223: AZ target host argument recognized in any positions
  224: AZ broadcast support, waittcp.c must be update (not for ICMP)
  225: AZ fix some problem in hgetopt.c
  226: AZ portability increased a bit
  227: AZ byteorder.c, add ./configure, just for byte ordering check
  228: AZ -9 | --listen <sign> listen mode for file transfers
  229: AZ settable packets id
  230: AZ fixed some problem in hgetopt.c/parseoption.c, assert() removed
  231: AZ when suid don't allows a lot of options if uid != euid
  232: AZ experimental traceroute mode (-T | --traceroute)
  233: AZ HCMP (hping control message protocol) initial devel
  234: AZ better HCMP support for safe protocol 'semi' implemented
  235: AZ main.c clearness improved and reorder.
  236: AZ HCMP for safe protocol works
  237: AZ fix a bug when fragmentations is active (introduced with --id)
  238: AZ settable tos, more than one --tos are ORed.
  239: AZ strong code cleanup, three new files: rtt.c, relid.c, sendip_handler.c
  240: AZ more portable includes, a bit more portable getifname.c
  241: AZ enhanced ICMP support: rtt, (DUP), id.
  242: AZ better ./configure and libpcap support predisposed.
  243: AZ add round-trip min/avg/max statistics.
  244: AZ get interface mtu, tunable fragments size, auto-activate
  245:    fragmentation if packet size > mtu
  246: AZ --destport enhanced, now --destport +23 inc dest port
  247:    for each packet sent starting from 23.
  248: AZ add libpcap support, Makefile and some .c updated
  249: AZ fixed a bug introduced enhancing --destport option.
  250: AZ if_mtu var name collision in BSD fixed, now h_if_mtu.
  251: AZ better signal handling and minor internal changes.
  252: FX save/restore errno in signal handlers.
  253: FX add memory protection functions mem*.c in order to
  254:    prevent swap of sensitive memory areas.
  255: AZ disable memory paging when --sign, --file, --listen used.
  256: AZ Option -c wait after sending last packet
  257: AZ ported on OpenBSD 2.3 (tested also on OpenBSD 2.5)
  258: AZ enhanced ICMP support, now send type 8,0,3,4,5,11
  259: AZ --traceroute default bind ttl to ctrl+z
  260: MK Now waitpacket() handle ip options
  261: MK Record route option support, and update IP related
  262:    functions to handle options. Also add ip_opt_build.c
  263:    and display_ipopt.c (ripped from ping)
  264: AZ some bug fixed
  265: AZ --tcpexitcode option that exit with last tcp->th_flags
  266: AZ datafiller.c bug fix
  267: AZ add -p ++port, as -p +port but that increments the destination
  268:    port even if no replies are received.
  269: AZ fix getifname.c big problems with OpenBSD: it works only
  270:    for certain interface (now *seems* fixed)
  271: AZ portable sendip.c raw socket ip fields byte ordering (N.B.
  272:    Linux and OpenBSD has all ip field in network byte order
  273:    so you may add right defines if you port hping2 to other OSs)
  274: AZ compiles/works under FreeBSD 3.3
  275: 
  276: 17 Dec 1998 -- 0.67 release
  277: ---------------------------
  278: 
  279: AZ add -a option

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>