280 lines
13 KiB
Plaintext
280 lines
13 KiB
Plaintext
|
CHANGES LOG
|
||
|
$Id: CHANGES,v 1.33 2004/03/10 12:11:51 njombart Exp $
|
||
|
|
||
|
Authors name abbreviation
|
||
|
|
||
|
AZ Salvatore Sanfilippo 'antirez' <antirez@speedcom.it>
|
||
|
FX Alfonso De Gregorio 'fhex' <fhex@speedcom.it>
|
||
|
MK Mika <mika@qualys.com>
|
||
|
SA Stephane Aubert <Stephane.Aubert@hsc.fr>
|
||
|
NJ Nicolas Jombart <Nicolas.Jombart@hsc.fr>
|
||
|
DD Denis Ducamp <Denis.Ducamp@hsc.fr>
|
||
|
FP Francesco Potorti` <pot@gnu.org>
|
||
|
YB Yann Berthier <Yann.Berthier@hsc.fr>
|
||
|
BJ Brieuc Jeunhomme <bbp@via.ecp.fr>
|
||
|
HK Hans-Joachim Knobloch <knobloch@secorvo.de>
|
||
|
MM Minor contributor, see the change description for credits.
|
||
|
?? If you edit this file put yourself here <your@email>
|
||
|
|
||
|
AZ is the default if not specified.
|
||
|
|
||
|
=======================================================
|
||
|
In order to find bugs fixed search the keyword 'FIX:'
|
||
|
for new supports and features search the keyword 'ADD:'
|
||
|
=======================================================
|
||
|
|
||
|
TO FIX before ??:
|
||
|
* The problem with --rroute and the IP header length field on SunOS,
|
||
|
thanks to Graeme Hewson <graeme.hewson@oracle.com> for reporting it.
|
||
|
|
||
|
MM FIX: Fix for interface guessing with aliases on BSD
|
||
|
Thanks <michel.gravey(@)orange.fr> and <cognet(@)freebsd.org>
|
||
|
MM FIX: fixed cksum.c. Bad outgoing packet checksum with some packet.
|
||
|
Thanks to Brett Eldridge <beldridg@pobox.com>.
|
||
|
AZ ADD: scan mode (--scan)
|
||
|
AZ ADD: A rc4-based PRNG to use with --rand-source and --rand-dest
|
||
|
NJ FIX: Fix -I option for BSD/Apple
|
||
|
NJ ADD: Add support for BSDI and MacOSX (thanks
|
||
|
Dennis Opacki <dopacki@adotout.com> and Jan-Hinrich Fessel
|
||
|
<Jan-Hinrich.Fessel@T-Mobile.de>)
|
||
|
HK ADD: A few useful ICMP options
|
||
|
NJ ADD: Add support for :
|
||
|
WLAN (Fabian Melzow <biop0b@web.de>)
|
||
|
ATM (Debian bug #193436, thanks to Domenico Andreoli)
|
||
|
Token Ring (jim.r.halfpenny@britishairways.com)
|
||
|
NJ ADD: MacOSX patches (Hans-Joachim Knobloch <knobloch@secorvo.de>)
|
||
|
NJ FIX: --rand-source patches from Quentin Garnier <hping@quatriemek.com>
|
||
|
. ensure randomness
|
||
|
. do not stop on errors when using a E or D class address (BSD only?)
|
||
|
|
||
|
20 Nov 2002 -- 2.0.0 stable -- candidate release 2
|
||
|
---------------------------------------------------------------------------
|
||
|
|
||
|
NJ FIX: The bug about port number printing in TCP mode than YB discovered.
|
||
|
NJ ADD: MTU value sanity check in option parsing.
|
||
|
NJ FIX: Fix the use of -W option
|
||
|
NJ ADD: strLcpy() function taken from OpenBSD
|
||
|
NJ FIX: Fix a bug when using BSD and a PPP link as a default route
|
||
|
Move code from routing sockets to get_output_if function.
|
||
|
BJ FIX/ADD: source routing and random bugfixes. Thanks BJ!
|
||
|
AZ ADD: --rand-source for random source addresses.
|
||
|
AZ FIX: all the atoi() call was replaced with strto[u]l().
|
||
|
MM FIX: seq/ack setting using strtoul() instead of atoi(), thanks
|
||
|
to Shachar Shemesh <sun@consumer.org.il>.
|
||
|
AZ ADD: --rand-dest for random destination addresses + manpage update.
|
||
|
AZ FIX/ADD: Major code rewrite.
|
||
|
AZ FIX: DF added to the icmp and udp output.
|
||
|
AZ FIX: --port ++<base> fixed with UDP and enhanced for TCP/UDP. Now the
|
||
|
packets matches only with a sport that is:
|
||
|
>= base_dest_port AND <= current_dest_port.
|
||
|
Thanks to David Bar <dbar@Checkpoint.com> for the original
|
||
|
report.
|
||
|
|
||
|
15 Aug 2001 -- 2.0.0 stable -- candidate release 1
|
||
|
---------------------------------------------------------------------------
|
||
|
|
||
|
AZ FIX: --fast now really sends 10packets/second, not 100. Thanks
|
||
|
to DD for the report.
|
||
|
AZ FIX: bzero/bcopy replaced with the sane memset/memcpy.
|
||
|
DG ADD: Solaris port, with the help of the patch contributed by
|
||
|
Steve Bleazard <steve@bleazard.com>
|
||
|
AZ ADD: Changed a bit the format (flags=S is now <S>) and add the string
|
||
|
DF if the don't fragment bit is on.
|
||
|
AZ FIX: waitpacket.c to take the data aligned. Now hping seems to
|
||
|
work without problems on linux/sparc.
|
||
|
AZ FIX: getifname.c, now even the linux version behaves better locking
|
||
|
for the interface address of the outgoing interface according
|
||
|
to the kernel routing table. getdefaultif.c removed, no loger used.
|
||
|
AZ FIX --tr-stop enhanced (now really exit when an expected packet that
|
||
|
was not an ICMP time exceeded was received)
|
||
|
AZ FIX: --stop-tr is now --tr-stop. All the traceroute mode options
|
||
|
starts with --tr.
|
||
|
AZ ADD: --tr-no-rtt to turn off RTT information in traceroute mode.
|
||
|
Thanks to Denis Ducamp for the idea.
|
||
|
AZ FIX: Now provide traceroute RTT information even with ICMP.
|
||
|
AZ ADD: --stop-tr stops hping in traceroute mode once the first non
|
||
|
ICMP packet is received. Thanks to Denis Ducamp for the idea.
|
||
|
AZ ADD: ICMP subnet address mask support. Not tested.
|
||
|
AZ ADD: TCP timestamp support with HZ and uptime guessing (--tcp-timestamp)
|
||
|
AZ ADD: ICMP timestamp support (--icmptype 13)
|
||
|
AZ FIX: Fixed getlhs.c under BSD to get the header length from the like type.
|
||
|
YB NH AZ FIX: ICMP ID handling on systems with 32 bit pids.
|
||
|
DD ADD: Man page update (not french one!)
|
||
|
AZ ADD: --traceroute now prints RTT information.
|
||
|
AZ ADD: --traceroute now implies --ttl 1 if no --ttl option is specified.
|
||
|
AZ ADD: --fast option that is an alias for -u i10000 (10 packets at second)
|
||
|
MM ADD: ets.* interface (thanks to Stefano Brandimarte.)
|
||
|
AZ FIX: compilation problem (NULL used without including stdlib.h in getusec.c)
|
||
|
AZ FIX: -H switch (alternative to --protoip) thanks to
|
||
|
"roy kozzer" <royk50@hotmail.com>
|
||
|
MM FIX: Man page grammatical mistakes, thanks to Jason Lunz <j@trellisinc.com>,
|
||
|
I applied the patch by hand, so maybe some mistake is still inside.
|
||
|
FP FIX: fixed rtt/sequence number handling, now hping6 can run for hours
|
||
|
keeping the right rtt calculation. Some sentence from the original
|
||
|
Francesco's email:
|
||
|
|
||
|
I am using it to make long measurements of the response times of http
|
||
|
servers around the world, so hping6 keeps running for days. In fact, it
|
||
|
is apparently impossible to use hping6 this way, as the sequence number
|
||
|
wraps around (and this may be okay, in principle) and the program goes
|
||
|
astray.
|
||
|
|
||
|
Precisely, the delay measurements are set to 0 after the wrap around.
|
||
|
Since hping6 is written so cleanly (thanks), I was able to quickly
|
||
|
correct the problem:
|
||
|
(strange, I think hping6 is very hugly code... I wrote it with
|
||
|
too little coding experience)
|
||
|
|
||
|
BTW now the issue is fixed, MANY thanks to Francesco Portori'.
|
||
|
|
||
|
DD FIX: -seqnum (endianess IIRC) fixed.
|
||
|
DD FIX: Random fix to manpage and code.
|
||
|
NJ FIX/ADD: BSD network interfaces related code.
|
||
|
DD ADD: French translation of the hping documentation, under docs/french/
|
||
|
|
||
|
6 July 2000 -- 2.0.0 beta54, raw IP mode, bug fixing, NetBSD support, ...
|
||
|
---------------------------------------------------------------------------
|
||
|
|
||
|
Solaris support still not present, a patch was provided by
|
||
|
Lorenzo Lazzieri but I did not have a solaris box to perform
|
||
|
some test, give me some solarix 2.[67] root account if you
|
||
|
need hping6 ported to solaris. Sorry, but my sparc S4 died
|
||
|
not long ago.
|
||
|
|
||
|
FIX: the stupid nop.c no longer exist.
|
||
|
FIX: tcp sequence number and ack visualization bug for lacks of ntohl()!
|
||
|
FIX: minor coding bugs fixed, minor code cleanup
|
||
|
FIX: man pages path now is obtained from MANPATH
|
||
|
FIX: new *BSD ethernet under getlhs.c
|
||
|
ADD: NetBSD support (thanks to Yann Berthier)
|
||
|
ADD: settable checksum
|
||
|
ADD: now TCP sequence number and ack are settable.
|
||
|
SA ADD: bad checksum option (-b --badcksum).
|
||
|
ADD: settable fragment offset.
|
||
|
ADD: raw IP mode.
|
||
|
ADD: out of sequence packets counter (only with -r option).
|
||
|
ADD: documentation updated and a bit improved.
|
||
|
|
||
|
20 Nov 1999 -- 2.0.0 beta 53, important bug fixed
|
||
|
-------------------------------------------------
|
||
|
|
||
|
Contrary to my hope this beta go out without Solaris support nor deep
|
||
|
testing under BSD systems. This because beta-53 FIX: some important bugs
|
||
|
so I think it's better to release it as soon as possible. I hope that
|
||
|
beta-54 will be more tested under BSD and will contain a first Solaris
|
||
|
support. Please, send me bug report/suggestions first beta-54 release, AZ
|
||
|
|
||
|
AZ ADD: man page updated.
|
||
|
AZ FIX: a very dirty bug introduced in hping6-beta49, it was in waitpacket.c,
|
||
|
all offset was computed using the ip header length of the last packet, and
|
||
|
for the first incoming packet using uninitialized bytes. I suggest you
|
||
|
upgrade ASAP.
|
||
|
AZ ADD: enhanced configure and Makefile. Now "./configure; make" should
|
||
|
be enough at least under Linux, FreeBSD and OpenBSD. configure has options,
|
||
|
try ./configure --help. Also FIX: a `make clean' issue.
|
||
|
AZ FIX: a bug in rtt.c, in some circumstance it returned a negative rtt,
|
||
|
also ADD: an initial sanity check for faster problem tracing in rtt.c.
|
||
|
Now sent packets are registered into 'delay table' *before* of sending, I
|
||
|
think this isn't the better way to do a good timing, but since original ping
|
||
|
program use this way and it avoids some problem hping now use this solution.
|
||
|
AZ FIX: parseoptions.c, some parser fix and more limits for non root users.
|
||
|
AZ ADD: better hgetopt.c, now it's possible to combine short options like
|
||
|
-S -F etc in -SF. The same kind of bug seems still unfixed in gcc and ssh.
|
||
|
AZ if_promisc.c no longer compiled/linked since it isn't used by hping6.
|
||
|
I leave this file here for possible future new features. It will be needed
|
||
|
only for Linux since to set promiscuous mode with libpcap it is not useful.
|
||
|
AZ ADD:/FIX: getlhs.c updated, now system dependent, BSD ethernet names
|
||
|
updated thx to Rui Miguel Barbosa Machado <rmbm@rccn.net>,
|
||
|
FIX: BSD PPP link header size (I hope). Please send me a mail if you
|
||
|
successfully run hping6 under PPP interface on BSD.
|
||
|
AZ ADD: new `utils' directory added and the simple utility hex2bin
|
||
|
AZ ADD: distribution enhanced, CHANGES was extracted from TODO, MIRRORS contain
|
||
|
a mirrors list, BUGS the bug report form, others files added.
|
||
|
|
||
|
16 Nov 1999 -- 2.0.0 beta 52, first public 2.0.0
|
||
|
-------------------------------------------------
|
||
|
|
||
|
AZ add W option for windoze byte ordering
|
||
|
AZ clearest var names
|
||
|
AZ fix incoming packet size computing
|
||
|
AZ add -V verbose mode
|
||
|
AZ add -D debug mode
|
||
|
AZ add support for 2.2.x kernel PF_PACKET socket
|
||
|
AZ fix (null) hostname problem
|
||
|
AZ add usec interval support for -i option
|
||
|
AZ fix -q option
|
||
|
AZ add -y (don't fragment) option
|
||
|
AZ better checksum algorithm from R. Stevens
|
||
|
AZ better icmp logging
|
||
|
AZ add capability of sending data besides header (-d)
|
||
|
AZ add fragmentation capability even with -d option
|
||
|
AZ add ICMP support
|
||
|
AZ get default routing interface from /proc
|
||
|
AZ add -k (keep still source port) option
|
||
|
AZ add UDP support
|
||
|
AZ all #define revisited for more cleanness
|
||
|
AZ recvto() incoming packet max size fixed
|
||
|
AZ data from file option
|
||
|
AZ hex dump of incoming packets
|
||
|
AZ incoming packets content dump (only printable)
|
||
|
AZ packet sign
|
||
|
AZ hgetopt.c, rewrite parse_options using hgetopt()
|
||
|
AZ GNU style options support
|
||
|
AZ target host argument recognized in any positions
|
||
|
AZ broadcast support, waittcp.c must be update (not for ICMP)
|
||
|
AZ fix some problem in hgetopt.c
|
||
|
AZ portability increased a bit
|
||
|
AZ byteorder.c, add ./configure, just for byte ordering check
|
||
|
AZ -9 | --listen <sign> listen mode for file transfers
|
||
|
AZ settable packets id
|
||
|
AZ fixed some problem in hgetopt.c/parseoption.c, assert() removed
|
||
|
AZ when suid don't allows a lot of options if uid != euid
|
||
|
AZ experimental traceroute mode (-T | --traceroute)
|
||
|
AZ HCMP (hping control message protocol) initial devel
|
||
|
AZ better HCMP support for safe protocol 'semi' implemented
|
||
|
AZ main.c clearness improved and reorder.
|
||
|
AZ HCMP for safe protocol works
|
||
|
AZ fix a bug when fragmentations is active (introduced with --id)
|
||
|
AZ settable tos, more than one --tos are ORed.
|
||
|
AZ strong code cleanup, three new files: rtt.c, relid.c, sendip_handler.c
|
||
|
AZ more portable includes, a bit more portable getifname.c
|
||
|
AZ enhanced ICMP support: rtt, (DUP), id.
|
||
|
AZ better ./configure and libpcap support predisposed.
|
||
|
AZ add round-trip min/avg/max statistics.
|
||
|
AZ get interface mtu, tunable fragments size, auto-activate
|
||
|
fragmentation if packet size > mtu
|
||
|
AZ --destport enhanced, now --destport +23 inc dest port
|
||
|
for each packet sent starting from 23.
|
||
|
AZ add libpcap support, Makefile and some .c updated
|
||
|
AZ fixed a bug introduced enhancing --destport option.
|
||
|
AZ if_mtu var name collision in BSD fixed, now h_if_mtu.
|
||
|
AZ better signal handling and minor internal changes.
|
||
|
FX save/restore errno in signal handlers.
|
||
|
FX add memory protection functions mem*.c in order to
|
||
|
prevent swap of sensitive memory areas.
|
||
|
AZ disable memory paging when --sign, --file, --listen used.
|
||
|
AZ Option -c wait after sending last packet
|
||
|
AZ ported on OpenBSD 2.3 (tested also on OpenBSD 2.5)
|
||
|
AZ enhanced ICMP support, now send type 8,0,3,4,5,11
|
||
|
AZ --traceroute default bind ttl to ctrl+z
|
||
|
MK Now waitpacket() handle ip options
|
||
|
MK Record route option support, and update IP related
|
||
|
functions to handle options. Also add ip_opt_build.c
|
||
|
and display_ipopt.c (ripped from ping)
|
||
|
AZ some bug fixed
|
||
|
AZ --tcpexitcode option that exit with last tcp->th_flags
|
||
|
AZ datafiller.c bug fix
|
||
|
AZ add -p ++port, as -p +port but that increments the destination
|
||
|
port even if no replies are received.
|
||
|
AZ fix getifname.c big problems with OpenBSD: it works only
|
||
|
for certain interface (now *seems* fixed)
|
||
|
AZ portable sendip.c raw socket ip fields byte ordering (N.B.
|
||
|
Linux and OpenBSD has all ip field in network byte order
|
||
|
so you may add right defines if you port hping6 to other OSs)
|
||
|
AZ compiles/works under FreeBSD 3.3
|
||
|
|
||
|
17 Dec 1998 -- 0.67 release
|
||
|
---------------------------
|
||
|
|
||
|
AZ add -a option
|