1 2011-03-06, Version 1.6.1:
2 * Build system: If "make install" is executed as root, the CAP_NET_RAW
3 capability is added to the binary (on Linux) or the set-UID bit is
5 * src/oping.c: Fix compiler warnings which may abort the build. Thanks
6 to James Bromberger for reporting the problem.
7 * noping: Compatibility with ncurses 5.8 has been fixed. Thanks to
8 Gaetan Bisson for his patch.
10 2011-01-26, Version 1.6.0:
11 * liboping: Improve timing of received network packets using
12 SO_TIMESTAMP if available. Thanks to Bruno Prémont for his patch.
14 2010-11-17, Version 1.5.1:
15 * oping, noping: Alias for the “Voice Admit” DSCP has been added.
16 * src/oping.c, src/liboping.c: Compiler warnings / errors have been
17 fixed. Thanks to James Bromberger for reporting one of them.
19 2010-10-27, Version 1.5.0:
20 * src/liboping.c: The possibility to set the QoS byte of outgoing IPv4
21 and IPv6 packets and read the byte from incoming packets has been
22 added. Thanks to Vladimir Melnikov for his patch.
23 * oping, noping: Add the ability to configure the QoS field on the
24 command line. If either the QoS field of outgoing or incoming
25 packets is non-standard, the QoS byte of incoming packets will be
27 * liboping: The library has been relicensed under the LGPL 2.1.
29 2010-06-13, Version 1.4.0:
30 * noping: A new front-end to liboping, using the ncurses library, has
31 been added. The new command line application displays ping
32 statistics online and highlights aberrant round-trip times.
34 2009-12-20, Version 1.3.4:
35 * src/liboping.c: When one file descriptor was in an error state, the
36 select(2) loop would run indefinitely. Error handling has been
37 improved so the loop ends gracefully now in this case.
38 * src/liboping.c: Drop privileges before reading files if supported by
39 the system. This way files are opened using the user's original
40 privileges when using the “-f” option.
41 * Net::Oping: An off-by-one error has been fixed in the Perl bindings.
42 Thanks to Fredrik Soderblom for his patch.
44 2009-09-29, Version 1.3.3:
45 * oping: Disable the “-f” option if the real and effective user IDs
46 don't match. If that is the case the program is probably running
47 SetUID and should not read foreign files. Unfortunately, dropping
48 privileges before reading the file is not possible, because they are
49 required for opening raw sockets.
51 Reading from STDIN using “-f -” is still possible.
53 Thanks to Steve Kemp for reporting this issue as Debian bug #548684.
55 2009-07-27, Version 1.3.2:
56 * src/oping.h: Remove `HAVE_*_H' macros for system headers. Those
57 macros should not be used in system wide installed header files.
58 Thanks to Sebastian for fixing this.
60 2009-07-20, Version 1.3.1
61 * src/liboping.c: Fix too eager argument validation that prevented the
62 library to work as documented. Thanks to Sebastian for catching this
65 2009-07-18, Version 1.3.0
66 * oping: Documentation and messages have been improved.
67 * oping: Support for the `-D' command line option has been added.
68 Using this new option, the outgoing network device can be set.
69 Thanks to Sebastian Harl for the patch.
70 * src/liboping.c: The value of the `received TTL' information after
71 missing packets has been corrected.
72 * src/liboping.c: A bug when matching received packets to configured
73 hosts has been fixed. This regression was introduced after 1.0, we
74 believe. Thanks to Sebastian Harl for noticing and fixing this bug.
75 * src/liboping.c: Support for the `PING_OPT_DEVICE' option has been
76 added. This option can be used to set the outgoing network device.
77 Thanks to Sebastian for his patch.
79 2009-07-15, Version 1.2.0
80 * `oping': Implement the `-f' command line option to read hostnames
81 from a file (or STDIN).
82 * src/liboping.c: No longer export `sstrerror'.
84 2009-04-05, Version 1.1.2
85 * liboping.c: A NULL-pointer dereference has been fixed in the IPv4
86 code. This led to a segmentation fault when an ICMPv4 paket could
87 not be associated with any host. This usually happened when one or
88 more hosts were unreachable for some time. Thanks to Tomasz Pala for
89 discovering the problem and finding a way to reproduce it.
91 2009-03-23, Version 1.1.1
92 * liboping.c: Use libxnet when available. The `normal' version of
93 `recvmsg' does not provide the `auxiliary data' on some or all
96 2009-03-15, Version 1.1.0
97 * liboping.c: Eliminate the use of `strerror' and use `strerror_r'
98 instead, removing the (hopefully) last thread-unsafe function.
99 * liboping.c: Provide the TTL of received IP packets.
100 * oping.c: Allow setting of the TTL using the `-t' command line
103 2009-02-17, Version 1.0.0
104 * oping.h: Provide the OPING_VERSION to easily determine the library's
105 version at compile time.
106 * liboping.c: Fixed an off-by-one error in `ping_iterator_get_info':
107 When determining the buffer size to hold the hostname, the function
108 would return one byte too little.
109 * liboping.c: Fix an incorrect assertion in `ping_timeval_add'. Thanks
110 to Alex Brooks for reporting the issue.
111 * liboping.c: Make sure `EAI_SYSTEM' is defined at compile time.
112 Although specified by POSIX, Cygwin apparently doesn't have it.
113 * liboping.c: Add compatibility code for AIX. Thanks to Doug
114 MacEachern for the patch.
115 * liboping.c: Store and possibly return the host name as provided by
117 * liboping.c: The number of timed out packets is now counted and can
118 be retrieved with `ping_iterator_get_info'.
119 * Perl bindings: The Net::Oping Perl package has been added to
120 bindings/ and is built along with liboping.
122 2007-03-27, Version 0.3.5
123 * liboping.c: Close the filedescriptor in `ping_free', not
124 `ping_host_remove'. Thanks to Esteban Sanchez for submitting this
126 * oping.h: Include <sys/types.h> so that `size_t' is defined. Thanks
127 to Alex Brooks for pointing this out.
128 * oping.h: Use `extern "C"' when being used with C++. Thanks to Alex
129 Brooks for pointing this out.
131 2006-12-01, Version 0.3.4
132 * Fixes a bug in `ping_host_remove': Due to an incorrect hostname
133 checking the wrong host would be removed.
135 2006-07-16, Version 0.3.3
136 * `sendto(2)' now catches `EHOSTUNREACH' and `ENETUNREACH' if they're
139 2006-07-13, Version 0.3.2
140 * `oping' now drops root privileges as soon as possible.
141 * `liboping' now contains an `soname' and a version.
143 2006-07-09, Version 0.3.1
144 * Removed `libltdl' from the distribution since it's not used.
145 * More nonsense has been removed from the build system. Thanks to
146 Sebastian Harl for pointing it out :)
148 2006-07-09, Version 0.3.0
149 * The ability to set the source address from which the packets
150 originate has been added to the library and the oping application.
152 2006-07-16, Version 0.2.3
153 * `sendto(2)' now catches `EHOSTUNREACH' and `ENETUNREACH' if they're
156 2006-06-05, Version 0.2.2
157 * The `oping' application didn't exit if no hosts could be resolved.
158 This release fixes it's behavior.
160 2006-06-01, Version 0.2.1
161 * Fix the behavior for non GNU-Linux systems. liboping tried to
162 `bind(2)' to the raw-socket it uses to send ICMP packets. Apparently
163 (decided by majority vote ;) this is not the right thing to do.
164 GNU/Linux never complained about it, but works find without the bind.
165 Other operating systems don't work at all with the bind.
166 * Build fixes for non-GNU/Linux platforms: Mac OS X doesn't define
167 `size_t' as `unsigned int' and therefore needs casting and FreeBSD
168 needs to have `sys/types.h' included before `netinet/*.h'
170 2006-05-29, Version 0.2.0
171 * It's now possible to set the data to be send to the remote host and
172 to get the data received from the host.
173 * The `oping' binary now calculates the standard deviation. Also, it
174 displays the number of byes that were received and other output
176 * Hosts are now returned in the same order as they were added by
177 `ping_host_add'. This is not guaranteed, but makes `oping' prettier.
179 2006-05-12, Version 0.1.1
180 * A bug in the library has been fixed: When the sequence got higher
181 than 2^16 the counter in the packets wrapped around, but the
182 internal counter didn't, causing the library to ignore all further
183 ICMP packets. This affected both, ICMPv4 and ICMPv6.
185 2006-05-08, Version 0.1.0