1CHANGES 2------- 32.41 Mar 17 09:35 2013 4 Bugfixes 5 - Windows Vista does not appear to support inet_ntop(). It seems to 6 have InetNtop() instead. So, working around by using getnameinfo() 7 and passing in the NI_NUMERICHOST to get an IP address. 8 Features 9 - Change Net::Ping to use Time::HiRes::time() instead of CORE::time() 10 by default. For most successful cases, CORE::time() returned zero. 112.40 Mar 15 11:20 2013 12 Bugfixes 13 - several fixes to tests to stop the black smoke on Win32's 14 and Cygwin since the core updated the module to Test::More. 15 I had planned a later release, but all the black smoke is 16 forcing a release. 17 - fixes to some skips in tests that were still using the 18 Test style skip's. 19 - Documentation fix for https://rt.cpan.org/Ticket/Display.html?id=48014. 20 Thanks to Keith Taylor <keith@supanet.net.uk> 21 - Instead of using a hard-coded TOS value, import IP_TOS from 22 Socket. This fixes an outstanding bug on Solaris which uses a 23 different value for IP_TOS in it headers than Linux. I'm assuming 24 other OS's were fixed with this change as well. 25 26 Features 27 - added TTL handling for icmp pings to allow traceroute like 28 applications to be built with Net::Ping. Thanks to 29 <rolek@bokxing.nl> for the patch and tests! 30 31 Internals 32 - replaced SOL_IP with IPPROTO_IP. SOL_IP is not portable and was 33 hard-coded anyway. 34 - added IPPROTO_IP, IP_TOS, IP_TTL, and AF_INET to the list of Socket 35 constants imported. 36 - removed some hard-coded constants. 37 - converted all calls to inet_ntoa() to inet_ntop() in preparation 38 for further ipv6 updates. 39 40 Infrastructure 41 - Makefile.PL updated to require Test::More, Time::HiRes, and a 42 recent Socket 43 - several changes for github hosting 44 - add a .gitignore file 45 - added a .travis.yml file to allow CI testing with changes pushed 46 to github 47 - replaced the README with a README.md which displays the 48 Travis CI build status on github. 49 50 512.39 Mar 13 09:25 2013 52 - patch from Matthew Musgrove to resolve RT #45812. Thanks! 53 - pulled in several changes from the Perl core 54 552.36 Jun 08 12:00 2009 56 - release to include a few fixes from the Perl core 57 582.35 Feb 08 14:42 2008 59 - Patch in Perl change #33242 by Nicholas Clark 60 <http://perl5.git.perl.org/perl.git/commit/5d6b07c5a4c042580b85248d570ee299fd102a79> 61 622.34 Dec 19 08:51 2007 63 - Release primarily to prevent problems with the Perl core in 64 preparation for the Perl 5.10 release. No real bug fixes, but 65 text fixes are included. 66 - skip test t/510_ping_udp.t on Windows Vista. Thanks to Jan 67 Dubois for the code to test for Vista. 68 - t/510_ping_udp.t should check for a udp echo port, not a tcp 69 echo port. 70 712.33 Jul 31 20:15 2007 72 - add new method port_number() rather than asking users to 73 twiddle with the internals of Net::Ping to probe a specific 74 port. This should resolve a few bugs where the documentation 75 was lacking. 76 - apply patch from bergonz at labs.it. This patch resolves 77 several problems logged regarding using Net::Ping in a multi- 78 threaded program. Thanks so much! 79 <http://rt.cpan.org/Ticket/Display.html?id=17408> 80 812.32 Jul 30 21:30 2007 82 - new co-maintainer Steve Peters 83 - integrate assorted bleadperl fixes from the past four years 84 <http://rt.cpan.org/Public/Bug/Display.html?id=28348> 85 862.31 Jun 28 14:00 2003 87 - Win32 Compatibility fixes. 88 Patch by mhx-perl@gmx.net (Marcus Holland-Moritz) 89 - Apply bleadperl patch #22204 90 - Add ToS support. 91 Patch by martin@lorensen.dk (Martin Lorensen) 92 932.30 Apr 18 14:00 2003 94 - Fix select() bug for UDP and ICMP protocols 95 in case packet comes from wrong source or seq. 96 - Allow UDP ping to different IP addresses 97 without instantiating a new object. 98 - Add retrans() method to customize or disable 99 backoff factor for udp pings. 100 Thanks Torgny.Hofstedt@sevenlevels.se 101 - Let ECONNRESET be considered reachable for 102 UDP pings. Now it works for cygwin. 103 Spot by jhi@iki.fi (Jarkko Hietaniemi). 104 1052.29 Apr 12 15:00 2003 106 - Implement "double send()" concept for udp pings. 107 See: <http://perlmonks.thepen.com/42898.html> 108 Thanks to rdw @ perlmonks. 109 - Send multiple udp packets in case of loss. 110 - Exponential backoff code swiped from Net::DNS 111 Thanks to mike@fuhr.org (Michael Fuhr). 112 - Also allows to capture udp ECONNREFUSED condition. 113 - Rename tcp_service_check method to service_check. 114 - Allow demo/fping -s to force service check. 115 Idea by ralijani@yahoo.com (REZA Alijani) 116 - Fix return from ping to be compatible with wantarray 117 when the host doesn't even resolve. 118 - Add udp proto test to test suite. 119 - VMS patch from Craig Berry to pre-check echo. 120 - Apply bleadperl patch (change #18904) 121 - Apply bleadperl patch as explained: 122 http://www.xray.mpe.mpg.de/mailing-lists/perl5- 123 porters/2003-03/msg00992.html 124 1252.28 Jan 23 18:00 2003 126 - No new features. Bug fixes only. 127 - Fixed ICMP_STRUCT to work on Big Endian platforms. 128 Thanks to danb@thelittlemacshop.com (Dan Buettner) 129 for testing on Mac OS X 10.2.3 and many others 130 for testing on Big Endian boxes. 131 - Not do binmode(). Causes more problems than helps. 132 - Perl 5.004 compatibility fixes (Spot by Honza). 133 1342.27 Jan 15 23:00 2003 135 - Patch by slebedev@iwl.net (Sergey Lebedev): 136 - 1) Fixed response packet parsing offsets in ping_icmp. 137 - 2) Added icmp_result method. 138 - Patch by radu@netsoft.ro (Radu Greab): 139 - 1) Changed ping_tcp() to use non-blocking connect 140 instead of alarm() interface in order to avoid 141 conflicts with user applications. 142 - 2) Also get rid of all eval {} code in ping_tcp 143 in order to avoid catching SIGALRM trigger and 144 to avoid conflicts with other evals. 145 - 3) Avoid ioctl() syscall for more accurate error 146 detection on non-blocking tcp connects. 147 - 4) Fix fcntl() syntax usage. 148 - Patch by adelton@fi.muni.cz (Honza Pazdziora): 149 - 1) Fix icmp request pack code to be more platform 150 independent regardless of Big/Little Endian. 151 - 2) Use binmode for filehandle in case perl 5.8.0 152 tries to dink with the data stream. 153 - Other changes by Rob Brown: 154 - Fixed ack() failures under certain rare conditions. 155 - Use more appropriate \z instead of $ in regex. 156 - Resolved Cygwin "make test" problems reported by 157 h.m.brand@hccnet.nl (H.Merijn Brand). 158 - Add sending a real ICMP packet in the test suite. 159 - Add Socket to PREREQ_PM (missing on some boxes?) 160 - Adjust syn_forking IPC pipe for fatter Win32 pids. 161 - Better handling of alarm() in test suite for Win32. 162 - Add a DESTROY method to reduce chances of 163 lingering connect-choking children. 164 1652.26 Dec 02 12:00 2002 166 - More compatibility fixes. 167 - Thanks for Solaris bug reports: 168 Paul.Gaborit@enstimac.fr (Paul Gaborit) 169 Jost.Krieger@ruhr-uni-bochum.de (Jost Krieger) 170 - Thanks for Solaris testing box: 171 Gunther.Heintzen@rrze.uni-erlangen.de (Gunther Heintzen) 172 - Solaris ENOTCONN select() for write choke bug. 173 - Thanks for Cygwin bug reports: 174 h.m.brand@hccnet.nl (H.Merijn Brand) 175 - Cygwin "EAGAIN instead of ECONNREFUSED" buttwag. 176 1772.25 Nov 19 12:00 2002 178 - Handle condition where O_NONBLOCK tcp connects 179 immediately fail without EINPROGRESS 180 (certain platforms or SMP optimizations). 181 1822.24 Oct 21 22:00 2002 183 - Compatibility fixes. 184 - Avoid using 127.1.1.1 and 127.2.2.2 because 185 it breaks on some platforms (Irix). 186 - Handle condition where nonblocking tcp connects 187 immediately connect on some platforms 188 (solaris and freebsd) and to be SMP safer. 189 - Win32 $p->ack( $host ) method should now work. 190 - Add ack( $host ) test cases to test suite. 191 1922.23 Oct 18 22:00 2002 193 - Fix ack() fd "each" detection bug. 194 - Add nack() method for OO interface to the 195 reason why the ack() failed. 196 - Fix premature "Timed out" side effect when a 197 different specified ack( $host ) fails. 198 - IO::Socket::INET ephemeral port buttwag 199 hack for the t/450_service.t test. 200 - Documental changes. 201 2022.22 Oct 17 16:00 2002 203 - Add $p->tcp_service_check() method to enforce 204 remote tcp service availability checking. 205 Patch by jef@linuxbe.org (Jean-Francois Dive). 206 - Changed default behavior of "syn" protocol to 207 disabled tcp_service_check instead of enabled. 208 - Win32 compatibility changes ("syn" protocol). 209 - Increase timeouts for tests in case client or 210 server network(s) are busy. 211 2122.21 Oct 14 12:00 2002 213 - Preserve/restore ALRM settings for tcp mode pings. 214 Spot by d@niel-berlin.de (Daniel Berlin) 215 - Can now select device for udp and icmp protocols. 216 Patch by sarfata@altern.org (Thomas Sarlandie). 217 - Add new "syn" protocol to allow for mass parallel 218 (synchronous) TCP service reachability checking. 219 - Add ack() method to utilize non-blocking connect 220 (SYN/ACK) feature of the "syn" protocol. 221 - Add demo/fping script as a "syn" demonstration. 222 - Compatibility patches for cygwin. 223 Spot by frazee.23@osu.edu (Joseph Frazee) 224 2252.20 Jun 20 10:00 2002 226 - Perl 5.8.0 compatibility stuff. 227 Spot by dcd@tc.fluke.com (David Dyck). 228 And patch by jhi@iki.fi (Jarkko Hietaniemi). 229 - Move INSTALL doc into perldoc. 230 - Allow source_verify method to work 231 for icmp protocol as well as udp. 232 Spot by taner@taner.net (Taner Halicioglu) 233 2342.19 Jun 03 19:00 2002 235 - Add $p->source_verify method to skip source 236 endpoint verification of udp protocol pings for 237 those remote destinations with multiple interfaces 238 that may have the "reverse telnet" bug. 239 Spot by dcd@tc.fluke.com (David Dyck) 240 - Moved files to more standard locations. 241 - Less common martian used for ping test 242 to reduce conflicts 243 2442.18 May 06 12:00 2002 245 - More RPM spec generalizations. 246 2472.17 May 03 18:00 2002 248 - RPM spec generalizations. 249 michael.mclagan@linux.org (Michael McLagan) 250 - Win32 compatibility changes. 251 (Didn't compile on Win32 since v2.11.) 252 2532.16 Apr 11 14:00 2002 254 - Documentation changes. 255 - Added INSTALL doc. 256 - Added README to rpm %doc. 257 - Added neat MakeMaker constants routine. 258 - Buttwag around Makefile.PL warnings: 259 o "the following files are missing in your kit" 260 o "is not a known MakeMaker parameter name" 261 2622.15 Apr 06 23:00 2002 263 - Added ABSTRACT info. 264 - Allow for smoother upgrade from 265 from older Net::Ping versions. 266 - Change default protocol from udp to tcp 267 so it will work on most default systems 268 without any arguments to new(). 269 2702.14 Apr 01 14:00 2002 271 - Added text ip lookup feature. 272 e@arix.com (Erick Calder) 273 2742.13 Apr 01 14:00 2002 275 - Added ping time measuring feature. 276 e@arix.com (Erick Calder) 277 - Optionally allow for high resolution 278 precision for timeouts and measuring 279 using the Time::HiRes module (Erick). 280 2812.12 Feb 17 19:00 2002 282 - More general error determination for 283 better cross platform consistency and 284 foreign language support. 285 Spotted by arnaud@romeconcept.com 286 - Test changes for VMS (Craig Berry) 287 2882.11 Feb 02 12:00 2002 289 - Test changes in case echo port is not available. 290 - Fix 110_icmp_inst.t to use icmp protocol 291 Spotted by craigberry@mac.com (Craig Berry) 292 2932.10 Dec 26 12:00 2001 294 - Added bind() function useful for clients with multiple 295 network interfaces performing the ping check thanks to 296 sethb@clarkhill.com (Seth Blumberg). 297 - Execution optimizations for several constants (Seth). 298 - More test changes in case Socket module is not available 299 (Jarkko Hietaniemi). 300 3012.09 Dec 06 19:00 2001 302 - Documental and test changes only. 303 - No functional changes. 304 3052.08 Dec 04 13:00 2001 306 - Faster response for Win32 tcp_connect. 307 - Better explanations in test comments. 308 3092.07 Nov 28 13:00 2001 310 - Compatibility changes 311 - Works with UNIX and Win32 OS 312 - Works with Perl 5.005 5.6.x 5.7.x 5.8.x 313 - Applied several patches from distro 314 - External protocol added thanks to 315 colinm@cpan.org (Colin McMillen) 316 - Stream protocol added thanks to 317 bronson@trestle.com (Scott Bronson) 318 3192.06 Nov 19 12:00 2001 320 - Added Net-Ping.spec for RPM to easily 321 utilize using "rpm -ta Net-Ping*tar.gz" 322 - Moved Copyright section to perldoc 323 3242.05 Nov 18 20:00 2001 325 - Added test suite 326 3272.04 Nov 16 16:00 2001 328 - Added CHANGES and README to tarball. 329 - No functional changes. 330 3312.03 Nov 15 12:00 2001 332 - Portability adjustments to ping_tcp() 333 made by Rob Brown to work with most 334 default systems. 335 3362.02 Sep 27 12:00 1996 337 - Magic version by Russell Mosemann from CPAN 338