Annotation of embedaddon/hping2/CHANGES, revision 1.1.1.1

1.1       misho       1: CHANGES LOG
                      2: $Id: CHANGES,v 1.33 2004/03/10 12:11:51 njombart 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>