| [s20121221] | |
| YOSHIFUJI Hideaki (14): | |
| ninfod: Use unsigned int for digest. | |
| ninfod: nanosleep(3) needs <time.h>. | |
| ninfod: Too many arguments for syslog(3)/fprintf(3) via DEBUG(). | |
| ninfod: Fix several warnings on ununsed variables. | |
| ping6: Print unknown ICMP type. | |
| ping6: Fix flowlabel switch (-F option). | |
| arping: Fix sysfs decimal/hexadecimal parser for libsysfs support. | |
| ping6: Use GNU TLS by default. | |
| ninfod: Fix memory leakage in error path. | |
| ninfod: Fix off-by-one error to check possible programming error (again). | |
| ninfod: Do not expose freed buffer to caller. | |
| ping6: Ensure to initialize msghdr. | |
| ninfod: Support GNU TLS. | |
| ninfod: Allow printing usage without permission errors. | |
| [s20121207] | |
| YOSHIFUJI Hideaki (2): | |
| RELNOTES: Typos. | |
| ping,ping6: Check outgoing device only if specified. | |
| [s20121205] | |
| Jan Synacek (1): | |
| ping,tracepath doc: Fix missing end tags. | |
| YOSHIFUJI Hideaki (35): | |
| tracepath6: packet length option (-l) did not have any effect. | |
| tracepath,tracepath6: Fix pktlen message. | |
| tracepath,tracepath6: Use calloc(3) instead of using stack. | |
| tracepath6: Ignore families other than IPv4 and IPv6. | |
| ping6: Improve randomness of NI Nonce. | |
| tracepath,tracepath6 doc: Fix default pktlen. | |
| ping,rdisc: Optimize checksumming. | |
| makefile: Static link support for crypto, resolv, cap and sysfs. | |
| doc: Ajdust spaces around sqare brackets. | |
| ping,rdisc: Use macro to get odd byte when checksumming. | |
| ping6: Do not try to free memory pointed by uninitialized variable on error path. | |
| arping: Allow building without default interface. | |
| arping: No default interface by default. | |
| arping: Allow printing usage without permission errors. | |
| ping,ping6: Allow printing usage without permission errors. | |
| ping,ping6: Fix cap_t leakage. | |
| arping,ping,ping6: Do not ideologically check return value from cap_free,cap_{set,get}_flag(). | |
| arping: Fix sysfs_class leakage on error path. | |
| arping: Some comments for new functions for finding devices support. | |
| arping: Typo in type declaration. | |
| makefile: Use call function for external libraries. | |
| makefile: Add more comments. | |
| arping: Ensure to fail if no appropriate device found with sysfs. | |
| arping: Enforce user to specify device (-I) if multiple devices found. | |
| Makefile: parameterize options for linking libraries. | |
| Makefile: Use shell function instead if backquotes. | |
| Makefile: Ensure to have same date when making snapshot. | |
| spec: Maintainer does not use ipsec.spec. | |
| spec: partially sync with fedora. | |
| Makefile: Bump date in iputils.spec as well. | |
| spec: Add exmple lines for suid-root installation | |
| spec: Sort changelog. | |
| ping: Exit on SO_BINDTODEVICE failure. | |
| ping: Warn if kernel has selected source address from other interface. | |
| ping: Clarify difference between -I device and -I addr. | |
| [s20121126] | |
| YOSHIFUJI Hideaki (5): | |
| tracepath: Repair tracepath without -p option. | |
| tracepath,tracepath6: -p option in usage. | |
| ping,ping6: Use MAX_DUP_CHK directly, not using mx_dup_chk variable. | |
| ping,ping6: Abstract received bitmap macros/definitions. | |
| ping,ping6: Use __u64 or __u32 for bitmap. | |
| [s20121125] | |
| YOSHIFUJI Hideaki (30): | |
| ping6: Use IN6_IS_ADDR_UNSPECIFIED() instead of our own helper function. | |
| ping6 doc: Explicitly describe ping6 is IPv6 version if ping. | |
| ping6: Deprecate source routing by default (RFC5095). | |
| ping6: Use RFC3542 functions and definition for source routing. | |
| ping6: Introduce niquery_is_enabled() for readability. | |
| arping doc: interface is optional (-I option). | |
| ping: Eliminate dirty hack to cope with ancient egcs bug. | |
| Makefile: Fix missing right parenthes in comment. | |
| arping: Fix build failure with USE_SYSFS=yes and/or WITHOUT_IFADDRS=yes | |
| arping: Unify source files. | |
| arping: Reorder functions and comment out unsued code. | |
| arping,ping,ping6,tracepath,traceroute6 Makefile: Support static link of libidn by USE_IDN=static. | |
| Makefile: Minimize statically linked libraries. | |
| ping6: Do not clear seq check array twice for NI. | |
| ping6: Use MD5_DIGEST_LENGTH instead of magic value 16. | |
| ping6: Introduce helper functions for nonce in NI. | |
| ping6: Introduce NI_NONCE_SIZE macro instead of magic value 8. | |
| ping6: Ensure to call srand() to get some randomness in NI Nonce. | |
| ping6: Generate different NI Nonce in each NI Query (Memory version). | |
| ping6: Generate different NI Nonce in each NI Query (MD5 version). | |
| ping6: Cache NI Nonce. | |
| ping6: Print 'sequence number' embedded in NI Nonce. | |
| ninfod: Do noy try to memcpy to self. | |
| ninfod Makefile: More precise dependencies. | |
| ninfod: Discard multicat packet outside linklocal scope. | |
| ninfod: Apply default policy to refuse queries from global addresses. | |
| ninfod: Normalize timespec for delay. | |
| ninfod: Fix double-free without pthreads. | |
| ninfod: Do not mix output from multiple threads. | |
| ninfod: Employ internal buffer in stderrlog() for common case. | |
| [s20121121] | |
| Jan Synacek (2): | |
| ping,ping6: Add newline to error message. | |
| ping: Don't free an unintialized value. | |
| YOSHIFUJI Hideaki (31): | |
| arping,clockdiff,ping,rarpd,rdisc,traceroute6 doc: s/CAP_NET_RAWIO/CAP_NET_RAW/. | |
| ping,ping6: Do not assume radix point is denoted by '.' (-i option). | |
| arping,ping,ping6,rdisc,traceroute6: Fix version string. | |
| makefile: Give -fno-strict-aliasing to compiler by default. | |
| ping6: Use SCOPE_DELIMITER. | |
| Makefile: Remove -lm from ADDLIB. | |
| rdisc_srv,Makefile: Fix build. | |
| rdisc_srv,Makefile: Build rdisc_srv with make all. | |
| arping: set_device_broadcast() does not need to store return value of sub-functions. | |
| arping,Makefile: Make default interface configurable. | |
| arping: Do not allow empty device name (-I option). | |
| arping: Introduce check_ifflags() helper function. | |
| arping: Introduce device structure to hold output device information. | |
| arping: ALlow no default interface and select one by getifaddrs(). | |
| arping: Introduce 2nd (legacy) method to select interface by ioctls. | |
| arping,Makefile: Allow build without getifaddrs() with WITHOUT_IFADDRS=yes. | |
| Makefile: Use $< instead of $^ to complile C source code. | |
| ping,ping6: Reorder command-line options in alphabetical order. | |
| ping6: Show suboptions for Node Information Queries if -N suboption is invalid. | |
| ping,ping6 doc: Readability for TOS (-Q) option. | |
| rdisc: Missing new line after usage. | |
| rdisc: Make rdisc with responder support if configured. | |
| Makefile: distclean depends on clean. | |
| Makefile: Default to -O3. | |
| Makefile: Minimize options to gcc. | |
| Makefile: Add rule to build assembly files. | |
| arping,Makefile: 3rd legacy implementation to check network devices. | |
| arping: Less ifdefs. | |
| rdisc doc: Document -r, -p and -T options. | |
| ping6: NI Subjecet address did not work (-N subject-{ipv6,ipv4] suboptions). | |
| ping6: Ensure to detect subject type conflicts. | |
| [s20121114] | |
| Jan Synacek (2): | |
| clockdiff: remove unused variable | |
| ping: Wrap SO_BINDTODEVICE with the correct capability. | |
| YOSHIFUJI Hideaki (13): | |
| ping: IP_MULTICAST_IF does not need CAP_NET_RAW. | |
| ping6: Check ranges of flowlabel (-F option) and tclass (-Q option) arguments. | |
| ping6: Accept 0x-notation for flowlabel (-F option) and tclass (-Q option) arguments. | |
| ping,ping6: Manual update regarding -F, -Q and -N option. | |
| arping,ping,ping6: Defer exitting to allow users to see usage. | |
| arping,ping,ping6,ninfod: Change euid to uid (non-root) even if capabiliy is enabled. | |
| ninfod: Add configure. | |
| ninfod: libcap support to drop capabilities. | |
| ninfod: Add run as user (-u user) option. | |
| ninfod: Fix usage message. | |
| arping,clockdiff,rarpd,rdisc,tftpd: Change RFC source to tools.ietf.org. | |
| ninfod: Add ninfod(8) manpage. | |
| makefile: Add ninfod, distclean targets. | |
| [s20121112] | |
| Sergey Fionov (1): | |
| ping,ping6: Fallback to numeric addresses while exiting | |
| YOSHIFUJI Hideaki (18): | |
| ping,ping6: Rework capability support and Make sure -m and -I options work. | |
| ping,tracepath: Spelling fixes in manpages. | |
| ping,ping6: Fix integer overflow with large interval value (-i option). | |
| clockdiff: Make it work with large pid. | |
| ping,ping6: Make in_pr_addr volatile. | |
| arping: Do not quit too early with large deadline value (-w option). | |
| arping: Maintain minimum capabilities for SO_BINDTODEVICE(-I option). | |
| ping: Fix recorded route comparison. | |
| arping: Use getifaddrs() to get broadcast address. | |
| ping6: Fix typo in error message. | |
| ping6: Generate NI Group Address and Subject Name at once. | |
| ping,ping6: Unmask signals on start-up. | |
| arping: Build with USE_CAP=no. | |
| arping,ping,ping6,tracepath,tracepath6,traceroute6: Experimental IDN support. | |
| ping6: IDN support for the Subject Name in NI Query. | |
| tracepath,tracepath6: Introduce -p option for port. | |
| ping6: Add missing definitions/declarations for flowlabel management (-F option). | |
| makefile: Do not include merge commits in RELNOTES. | |
| [s20121106] | |
| YOSHIFUJI Hideaki (5): | |
| ninfod: Attatch configure and renew config.h.in. | |
| makefile: clean-up | |
| tracepath6: Print reason on getadrinfo() failure. | |
| ping,ping6: Fix hang with -f option. | |
| ping: Make sure to print C if checksum failed with -f option. | |
| [s20121011] | |
| Jan Synacek (2): | |
| ping,ping6: Defer the dropping if the "-m" is specified and correct capability is set. | |
| ping: Fix typo in echo reply | |
| Ole Bjorn Hessen (1): | |
| ping: report outstanding packets before sending next packet | |
| YOSHIFUJI Hideaki (32): | |
| ping,ping6: Add -D to synopsis. | |
| ping: More icmp code descriptions. | |
| ping,ping6: Hide ipg/ewma info without packets received. | |
| ping6: Remove unused variable. | |
| ping6: Help for -N suboptions. | |
| tracepath,tracepath6: Use argument type of int for field width specifier. | |
| clockdiff: Call nice() before changing effective uid. | |
| rdisc: Use fputs() instead of fprintf() to shut up gcc warning. | |
| rarpd: Check return value of chdir(). | |
| makefile: Introduce new variable for capability support. | |
| ping,ping6: Check return value of write(2) for stdout. | |
| ping6,tracepath,tracepath6: Do not dereference type-punned pointer directly. | |
| Makefile: host changed from takos to pleiades. | |
| ping6: Provide enough buffer for dn_comp() and make NI Query with Name subject work. | |
| ping6: Consolidate error path of niquery_option_subject_name_handler(). | |
| ninfod: Node Information Query (RFC4620) daemon from USAGI Project. | |
| ninfod: struct in6_pktinfo requires -D_GNU_SOURCE. | |
| ninfod: Use %zu format string for size_t variable. | |
| ninfod: Add missing entry for ENABLE_SUPTYPES in config.h.in. | |
| ninfod: Support newer environment supporting RFC3542. | |
| ninfod: Fix format string for string returned from strerror(3). | |
| ninfod: Check return value of fscanf(3). | |
| ninfod: Fix off-by-one error to check possible programming error. | |
| ninfod: Add datarootdir. | |
| ninfod: Use __func__ instead of __FUNCTION__. | |
| ninfod: Introduce ARRAY_SIZE macro for counting number of elements in an array. | |
| ninfod: Delete ninfod.sh by make distclean, not by make clean. | |
| ping6: Do not try to use result buffer when dn_comp(3) failed. | |
| ping,ping6: ifdef guard for inline function for capability support and fix build with USE_CAP=no. | |
| makefile: Do not use "-llib" dependency. | |
| arping: build without sysfs support (USE_SYSFS=no). | |
| Ãngel González (1): | |
| iputils: Add capability dropping | |
| [s20101006] | |
| Chris Caputo (1): | |
| ping,ping6: avoid gethostbyaddr during ping flood. | |
| Paul Martin (1): | |
| arping: Set correct broadcast address. | |
| YOSHIFUJI Hideaki (4): | |
| tracepath: Fix some small typos in tracepath.sgml. | |
| ping: Fix resource consumption triggered by specially crafted ICMP Echo Reply (CVE-2010-2529) | |
| Makefile: migrate main machine from beatrice to takos. | |
| Makefile: Use newer git subcommand style instead of git-subcommand. | |
| [s20100418] | |
| YOSHIFUJI Hideaki (28): | |
| ping6: Use IPV6_TCLASS to set outgoing traffic class if available. | |
| ping: Make build_echo(), gather_statistics() more generic. | |
| ping6: Experimental support for Node Information Queries (RFC4620). | |
| ping: simplify usage hint. | |
| ping: Rename constant names | |
| Extend -N option for NI Query options. | |
| ping6: Make length-check qtype-specific. | |
| ping6: Remove too many spaces between names. | |
| ping6: ping6_niquery.h needs asm/byteorder.h. | |
| ping6: Support Qtypes for IPv6/IPv4 Addresses. | |
| ping6: Split pr_niquery_reply(). | |
| ping6: Handle ICMPv6 code in NI Reply. | |
| ping6: Add subject-ipv6 and subject-ipv4 NI sub-option for subject address. | |
| ping6: Support subject name. | |
| ping6: Free old memory when reassign pointers. | |
| ping6: Always enable IPv6 Node Information Queries. | |
| makefile: Do not always link libresolv and libcrypto. | |
| ping,traceroute6,clockdiff: Enlarge hostname buffer. | |
| ping6: do not allow too large packet size by -s option. | |
| ping: needless space when printing usage. | |
| rdisc: Fix typo in error message. | |
| rdisc: Allow multiple addresses on one interface. | |
| arping: Support link-layer type with larger link-layer address. | |
| tracepath6: resolve target even if -n option is supplied. | |
| tracepath,tracepath6: sync tracepath and tracepath6. | |
| tracepath6: Make it more protocol independent. | |
| [s20100214] | |
| Jamal Hadi Salim (2): | |
| ping: ping by mark | |
| ping: ping by mark doc update | |
| Jamie Le Tual (1): | |
| ping: set un.echo.id to network byte order | |
| YOSHIFUJI Hideaki (11): | |
| [PING6,TRACEROUTE6]: Ignore error in setting IPV6_CHECKSUM socket option for ICMPv6 socket. | |
| [PING6]: Use if_nametoindex() to convert ifname to ifindex. | |
| [PING6]: Allow to specify source address with interface in a single -I option. | |
| ping6: Try using IPV6_PKTINFO sticky option to specify outgoing interface. | |
| rdisc: Use FOPEN_MAX if OPEN_MAX is undefined. | |
| ping6: Fix source routing with source interface set. | |
| ping,ping6: Don't print extra ', ' in finish(). | |
| tracepath: Fix documentation typo. | |
| Use sysconf(_SC_OPEN_MAX) instead of OPEN_MAX. | |
| ping,ping6: Add -D option to print timestamp. | |
| [s20071127] | |
| John Heffner (6): | |
| [iputils] tracepath: Add length flag to set initial MTU. | |
| [iputils] tracepath: Add documentation for the -l flag. | |
| [iputils] tracepath: Use PMTUDISC_PROBE mode if it exists. | |
| [iputils] tracepath: Document -n flag. | |
| [iputils] tracepath: Fix asymm messages. | |
| [iputils] tracepath: Re-probe at same TTL after MTU reduction. | |
| YOSHIFUJI Hideaki (8): | |
| [DOC]: Delete duplicated lines in RELNOTES. | |
| Fix white space errors. | |
| [CLOCKDIFF,PING,RDISC,TRACEROUTE6]: Support uClibc. | |
| [RARPD]: Fixed several signedness issues for char strings. | |
| [PING]: Use inet_pton() instead of sscan(). | |
| [PING6]: Use IN6_IS_ADDR_xxx() macro. | |
| [MAKEFILE]: Change authorized host to push snapshots. | |
| [MAKEFILE]: Use git-archive instead of git-tar-tree. | |
| [s20070202] | |
| Mike Frysinger (2): | |
| Use socklen_t in all the right places. | |
| [IPG]: handle pktgen setup in newer kernels. | |
| Mitsuru Chinen (2): | |
| [CLOCKDIFF]: Fix compilation errors about labels at end of compound statements. | |
| [PING6]: Use getaddrinfo() for the name resolution of intermediate nodes. | |
| YOSHIFUJI Hideaki (9): | |
| [MAKEFILE] Remove unused -I../include | |
| [TRACEPATH] Print usage if we met incorrect option. | |
| [PING6]: Fix compilation error with glibc-2.4 and later. | |
| [PING6]: Use getaddrinfo() to allow scoped addresses | |
| [PING6]: Ensure not to reverse-lookup if target is numeric address. | |
| [s20060512] | |
| YOSHIFUJI Hideaki: | |
| [BUILD] Build with standard headers. | |
| [ARPING,PING6] Build fix for some old systems. | |
| [s20060425] | |
| YOSHIFUJI Hideaki: | |
| [TRACEROUTE6] Fix ICMPv6 type printing with -v option | |
| [TRACEROUTE6] Mark ICMPv6 messages as known | |
| [DOC] Maintainer / Contact change | |
| [PING6,TRACEPATH6,TRACEROUTE6] Define SOL_IPV6,SOL_ICMPV6 where needed | |
| [TRACEROUTE6] Fix source/destination address with -v option | |
| [PING6,TRACEPATH6,TRACEROUTE6] Use new RFC3542 advanced API if available | |
| [RDISC] Use proper type for is_directly_connected() | |
| [PING,PING6] Use proper type for printf() | |
| [TRACEROUTE6] Fix inet_pton() error handling | |
| [TRACEROUTE6] Use minimum format if 0 is specified for datalen | |
| [TRACEROUTE6] Optimize datalen sanity checking code | |
| [TRACEPATH6] Use getaddrinfo() to allow scoped addresses | |
| [RDISC] Use strerror(errno) instead of sys_errlist[errno] | |
| [PING,PING6] Avoid using __constant_htons() if it is really needed | |
| [TRACEPATH6] Fix format for subseconds | |
| [ARPING,CLOCKDIFF,PING,PING6,TRACEROUTE6] Check return value from setuid(). | |
| [PING,PING6] ensure to initialize msg. | |
| [MAKEFILE] Make snapshot using git | |
| [020927] | |
| * arping.sgml, some options were forgotten. | |
| * send seqno in network byte order. Me. | |
| * Mads Martin Jørgensen <mmj@suse.de> Recursive citation: | |
| "On request of Mads Martin Jørgensen <mmj@suse.de> I've added manpages | |
| pregenerated from the Docbook sources. One could argue it is redundant | |
| when the Docbook sources are also there, but the argument of not having | |
| to install Docbook on a very small system to get the man pages was | |
| convinving enough to me. To quote Mads Martin: "How would a system | |
| be without a man page for ping?" | |
| As a chilidish revenge from my side enjoy with cyrillic date in these | |
| man pages. :-) | |
| * Ken Cox <jkc@redhat.com>. Bogus definition of SOCK_DRGAM&SOCK_STREAM on mips. | |
| * Error returned from recvmsg() resulted in a bogus printout in traceroute6. Me. | |
| * Use IPV6_CHECKSUM on icmp socket in traceroute6. Me. | |
| * Noah L. Meyerhans <frodo@morgul.net> Fix to doc. | |
| !* Noah L. Meyerhans <frodo@morgul.net> What is the problem with "long" triptime? | |
| ! Reporter does not respond. _Malignantly_. | |
| * Thomas 'Dent' Mirlacher <dent@cosy.sbg.ac.at> Ping did not exit sometimes! | |
| * Add option -W to override default 10 second linger timeout. Me. | |
| * Mads Martin Jørgensen <mmj@suse.de>: ping should not bind to autoselected | |
| source address, it used to work when routing changes. Return classic | |
| behaviour, option -B is added to enforce binding. | |
| * Pekka Savola <pekkas@netcore.fi> Forgotten \n messing output of ping6. | |
| * Noah L. Meyerhans <frodo@morgul.net> traceroute6 -q 1 did not work. | |
| * Pekka Savola <pekkas@netcore.fi> various sizeof() cleanups in traceroute6.c | |
| * "Dmitry V. Levin" <ldv@alt-linux.org> wrote: | |
| > ping (as well as other utilities) may open raw socket with descriptor <=2; | |
| > In case of suid-root, it can be used by malicious user to send data to | |
| > this raw socket. | |
| > | |
| > Yes, modern glibc and some kernels have workaround for it, but | |
| > IMHO iputils shouldn't rely on this feature. | |
| Taken into account, but no changes made. | |
| * "Tilman Heinrich" <tilHeinrich@web.de> said some scripts are broken | |
| when word "packet" disappeared from "100% packet loss". Despite of | |
| the inarguable fact that such scripts are truly mad and deserve breaking | |
| (sigh... exit codes are too smart concept for script writers, I guess), | |
| I have to recognize removing this word carrying zero information | |
| was not enough motivated. Returned. | |
| * ping used to retry forever when seeing ENOBUFS/ENOMEM without explicitly | |
| given deadline. Being logically correct it is bad in practice f.e. when | |
| pinging buggy device which locked up with some packets in queue. | |
| So, retry for a finite time... let is be lingertime. Fair? Me. | |
| * Two "messages" are sent to rpm maintainers to make their wrong patches | |
| failed. | |
| * Fix from RH iputils-20001007-deadline.patch. It was lost in the latest | |
| rpms btw. | |
| * Dax Kelson <dax@gurulabs.com>: added _unsupported_ option to comppile | |
| rdisc_srv. | |
| [020124] | |
| * Michal Kochanowicz <michal@michal.waw.pl> typos in tracepath.8 | |
| * Michael Wardle <michael.wardle@adacel.com>: undo silly change of ss000305 | |
| (printing rtt in some funny units). Michael noticed that "sec" is not | |
| standard abbreviation for time units (bullshit, of course), but real concern | |
| is that it is more difficult to interpret with a neglibible improvement | |
| to appearance. So, do this as expected: in "ms". | |
| * Documentation. Wow! I did it. man pages are disassembled to docbook, | |
| audited wrt real state, edited... and promised to be maintained | |
| in sync with the state of utilities. | |
| [011202] | |
| * Utz Bacher <utz.bacher@de.ibm.com> Bitops in ping6 were wrong | |
| on bigendian machines. Wow, luckily I forgot to acknowledge that patch | |
| of 010805 which has gotten rid of kernel bitops and did this so wrongly. | |
| * Michael Bakunin <bakunin@maphiasoft.org> (:-)) | |
| found mud in tftpd.c, it will crash when directory supplied in argument | |
| is longer ~512 symbols. | |
| * Alexandr D. Kanevskiy <kad@blackcatlinux.com>: buffer overflow | |
| in clockdiff. Very stupid one, the overflowed buffer even was not used. :-) | |
| * Alexandr D. Kanevskiy <kad@blackcatlinux.com>: shit! Code recognizing | |
| kernels with broken IP_RECVERR for raw sockets depended on race | |
| and accused even good kernel of being buggy. :-) | |
| [011002] | |
| * Stepan Koltsov <yozh@mx1.ru>, tracepath/tracepth6 segfaulted when | |
| used without address. | |
| * Alexandr D. Kanevskiy <kad@blackcatlinux.com>: arping printed | |
| "permission denied" instead of showing help page to non-superuser. | |
| [010824] | |
| * Alexandr D. Kanevskiy <kad@blackcatlinux.com>: ping compiled | |
| for linux-2.4 forgot to send the second packet, when used with linux-2.2 | |
| * Chris Evans <chris@scary.beasts.org>: buffer overflow in traceroute6. | |
| datalen was messed: counting header in half of places. | |
| Funny, looking into LBL traceroute, it is even worse :-) | |
| * Alexandr D. Kanevskiy <kad@blackcatlinux.com>: relayed patches | |
| by Solar_Diz. Only missing description of option -q is accepted. | |
| * <ipatel@wilnetonline.net> ping6 printed wrong mtu. | |
| * Alexandr D. Kanevskiy <kad@blackcatlinux.com>: -Werror is removed. | |
| Newer gcc are buggy and generates some wrong warnings about | |
| uninitalized variables, which are evidently initialized. | |
| [010805] | |
| * Some news from Pekka Savola <pekkas@netcore.fi> around setting tos bits. | |
| * arping: broadcast-only mode by Ard van Breemen <ard@telegraafnet.nl> | |
| * ping6/traceroute6: parse ICMP errors with extension headers (me) | |
| traceroute6 works with size > mtu now. Nice. | |
| * ping: Erik Quanstrom <quanstro@clark.net>. Serious patch. | |
| ping interval timer was not very broken, but very unintelligible. | |
| Though I remade the code to use leaky bucket logic, which | |
| is the most transparent one. Anyway, contribution by Eric is | |
| the most important one since the previous release. | |
| Short theory of operation: option -i (interval) sets rate r=1/interval pps, | |
| option -l (preload) sets burst size of l packets. So, ping sends | |
| at most r*t+l packets for an arbitrary interval t. | |
| Default values: l=1 and for non-flood case: r=1pps, for flood r=infinity. | |
| Nice? Exact algorithm is: | |
| Let N(t) be l/r=l*i initially and N(t) grow continuously with time as: | |
| N(t+delta) = min{l*i, N(t) + delta} | |
| Packet can be transmitted only at the time t_* when 1/r=i <= N(t_*) | |
| and in this case N(t) jumps: | |
| N(t_* + 0) = N(t_* - 0) - i. | |
| When interval is zero, algo degenerates allowing to send any amount | |
| of messages. In this case we modify it using l as limit on amount | |
| of unanswered requests and waiting for 10msec, when something is not | |
| answered. Note that the last thing (10msec) is just to be compatible with | |
| BSD manual pages. BSD ping is simply not able to avoid delay technically, | |
| we are able now. | |
| In result we got some new facilities: | |
| * "-f -l 100" becomes very aggressive, in fact on good link | |
| it holds permanently 100 packets in flight, which is very different | |
| of earlier bevaviour (one packet in flight). | |
| * -f and -i are not incompatible more. In fact, "-f -i 1" is equivalent | |
| to plain ping, only output is different (dotted). Essentially, | |
| change of output format is the only effect. "ping -i 0" is flood | |
| printing output in normal format. | |
| Moved some parts of code to ping_common.c. Common part is not fully | |
| trivial now. :-) | |
| * ping: Ian Lynagh <igloo@earth.li>, larger and dynamic dup detector. | |
| Also, Ian submitted two large patches, one fixing formatting, another | |
| doing something with signedness/longness. Not now... | |
| Later note: found not working. x + 7 / 8 :-). Sorry... dubious, withdrawn. | |
| size of table increased to maximal value instead (8K of memory, | |
| not a big deal). | |
| * tftpd: an old misprint. left@sbor.spb.su (Igor A. Lefterov) | |
| * clockdiff: do not fail, if reversed resolution failed. | |
| Tommy Lacroix <tommyl@zeroknowledge.com> | |
| * ping: audible ping by Patrik Schilt <patrik@bnc.ch> | |
| Patrick's option renamed to -a to align to freebsd. | |
| * ping: react to device queue overflows using IP_RECVERR. me. | |
| * ping: option -S allows to change sndbuf | |
| * rarpd is moved from separate package here (people asked) | |
| * ping6: kernel style bitops are not used more. | |
| * Option -A to adapt to network rtt. | |
| * Use BPF, when multiple pings are detected. | |
| [001110] | |
| * ping is able to select TOS. By Pekka Savola <pekkas@netcore.fi> | |
| * tracepath* DNS names. By Pawel Krawczyk <kravietz@ceti.com.pl> and | |
| Arkadiusz Miskiewicz <misiek@pld.org.pl> | |
| * ping6 is expected to be compiled with linux-2.2. | |
| [001011] | |
| * RH bugid#16677: segfault, when ping is used by root and size | |
| is large enough. Fix is to allow oversize by root (it is necessary | |
| to check kernel side), but clamp it at some safe value. | |
| [001010] | |
| * More bug fixes from Chris Evans <chris@ferret.lmh.ox.ac.uk> | |
| - do not trust h_length returned by system resolver. | |
| This value is meaningless in any case. | |
| - ping: buffer overflow in fill()!!! Disgraceful bug. | |
| * ping: allow not-priviledged users to use broadcasts. It was paranoia. | |
| Multicasts were allowed. 8) | |
| * ping: but force broadcasts&multicasts not to fragment. BSD does | |
| not allow to do this to anyone, we still allow this for superuser. | |
| * Option -M to control path mtu discovery. | |
| [001007] | |
| * By Pekka Savola <pekkas@netcore.fi> | |
| - SIOCGSTAMP/SO_TIMESTAMP are sensitive to bug in kernel. | |
| When get_fast_time != gettimeofday (f.e. timestampless x86), | |
| returned stamp can be out of sync with gettimeofday. | |
| Workaround is not to use SIOCGSTAMP/SO_TIMESTAMP on such systems. | |
| - fixes in man pages | |
| - compiles under rh-7.0 | |
| * Chris Evans <chris@ferret.lmh.ox.ac.uk> | |
| - ping: possible buffer overflow in pr_addr(). | |
| [000928] | |
| * Sorry. I have lost all the CVS with changes made since 000418. | |
| If someone sent me a patch after this date, please, resubmit. | |
| Restored from the last backup and mailboxes: | |
| * ping*, SO_TIMESTAMP support. | |
| * ping*, allow zero data length (reported by Damjan Lango <damjan.lango@hermes.si>) | |
| * iputils man and help updates. Pekka Savola <Pekka.Savola@netcore.fi> | |
| * ping.8, fix to ping man page. By Dadid Eisner <cradle@glue.umd.edu> | |
| * ping prints addresses in numeric, if destination is numeric. | |
| Proposed by Tim Waugh <twaugh@meme.surrey.redhat.com> | |
| New: | |
| * ping: strncpy bug <typo@inferno.tusculum.edu> | |
| * arping: improvements by Charles Howes <croot@micro-logistics.com> | |
| - a feature to arping: quit as soon as a reply is received. | |
| - default to eth0. | |
| - spelling | |
| [000418] | |
| * llsqrt() was buggy again! | |
| (noticed by Sam Farin <sfarin@ratol.fi>) | |
| [000404] | |
| * tracepath*, "NURDUnet-gw" bug workaround. | |
| (noticed by Vitaly E.Lavrov <lve@aanet.ru>) | |
| * tracepath*, handle case of routers initializing rtt to 128. | |
| Vitaly E.Lavrov <lve@aanet.ru> | |
| * shadowed icmp_sock in ping6. James Morris <jmorris@@intercode.com.au> | |
| * Bug in ping -f, introduced with SO_RCVTIMEO. me. | |
| * llsqrt() (ping, ping6) was wrong yet. me. | |
| [000310] | |
| * Print mean deviation of RTT in ping/ping6. | |
| * Use SIOCGSTAMP in ping/ping6. Old behaviour calculating | |
| true user-to-user latency is restored with option -U. | |
| Reason for this stupid change is mainly political; people | |
| wonder why freebsd has twice less latency on loopback. | |
| If to follow along this line, we have to print rtt equal to 0. 8) | |
| [ LATER NOTE: actually, the change is _right_ without any doubts. | |
| Ping has another bug: nameresolver is blocking, so that | |
| when it dies not respond, ping shows evenly increasing by 1 sec | |
| RTT. It is very confusing (look through linux-kernel maillists | |
| to count number of people, who were cheated by misconfigured dns). ] | |
| * Use SO_RCVTIMEO instead of poll() with ping/ping6 -f. | |
| * Added -V option to arping/ping/ping6/traceroute6/rdisc | |
| to print snapshot number. | |
| [000305] | |
| * rdisc: ugly bug in getting interface list. me. | |
| * ping/ping6: ping -i N, N>=3 did not work. Jeff Jonson <jbj@redhat.com> | |
| * ping/ping6: microsecond rtt measurements. me. | |
| [000120] | |
| * ping/ping6: non-zero exit code even without -w. | |
| [991024] | |
| * Option "-i" to ping/ping6 takes fractional time now, so that | |
| "ping -i 0.3 xxx" pings each 300 msec. The idea is by | |
| Marc Boucher <marc@mbsi.ca> | |
| * alpha/glibc-2.1 alignment problems in ping are fixed (struct timeval | |
| was wrongly aligned). | |
| [990915] | |
| * ping/ping6 worked only with kernels 2.3.15+ in 990824. | |
| [990824] | |
| * tftpd is added. It uses MSG_CONFIRM to confirm arp entries. | |
| * ping6: workaround for bug in some egcs versions. | |
| [990610] | |
| * ping: output buffer was too small for full sized ping. | |
| * ping: silly restriction on ping size is removed. | |
| [990530] | |
| * short man pages (Oleg M. Shumsky <oms@cp.tomsk.su>) | |
| * ping6: get and print hop limit of reply packets (ME) | |
| * rdisc deletes routes before exit with -TERM | |
| * ping/ping6: option -w TIMEOUT | |
| * arping: exit with error, if received no replies in normal | |
| (not DAD and not unsilicited ARP) mode. | |