Revision history for Perl extension NetAddr::IP 4.021 Wed Dec 10 11:09:36 PST 2008 Removed test code that produces a warning about all perl versions, OOPS!! instead of just the buggy 5.8.0 - 5.8.5 versions. Thanks to paul@city-fan.org for reporting this. 4.020 Tue Dec 9 16:25:46 PST 2008 cleaned up various typo's with good patch from Rob Riepel <riepel@networking.Stanford.EDU> thanks Rob. revised UtilPP v1.7 to work around perl 5.8.4 failures with certain @_ operations of goto &sub... see perl bug [ 23429]. Unfortunately, perl-5.8.4 is the distribution of choice for many solaris boxes 4.019 Sat Nov 29 15:15:30 PST 2008 in Lite/Util, add pure perl testing to XS build 4.018 Fri Nov 28 23:19:01 PST 2008 revised XS code to be full re-entrant, thread safe in Util.xs v1.26 removed all traces of mutex locks in Util.xs v1.26 removed function 'threads' here an in UtilPP v1.6 4.017 Sun Nov 23 19:32:59 PST 2008 Extended the capability of 'splitref' to allow splitting of objects into multiple pieces with differing CIDR masks. Returned object list can be split from bottom to top or from top to bottom depending on which method is called split, rsplit, splitref, rsplitref Thanks to kashmish <kashmish@gmail.com> for the idea on improving functionality of 'split'. Thanks to Rob Riepel <riepel@networking.Stanford.EDU> for a faster and more accurate _compV6 function. in UtitPP v1.5 correct documentation error add threads reporting (empty string) in Util v1.25 add threads reporting that returns a comma separated string of build headers. added what is hopefully thread safe operation via serialization. Must be invoked by "--with-threads" in Lite v1.12 corrected missing Zeros subroutine Zeros and Zero both will work in Lite v1.12 added minus (-) overloading to allow the subtraction of two NetAddr::IP objects to get the difference between the object->{addr}'s as a numeric value Thanks to Rob Riepel <riepel@networking.Stanford.EDU> for the initial code and inspiration for this enhancement 4.016 Wed Nov 5 18:13:20 PST 2008 in Util/ version 1.24 Clean up Makefile.PL to check actual required link libraries against the perl build for consistency 4.015 Sun Nov 2 10:10:38 PST 2008 in Util v1.23 add missing headers in configure and localconf.h for Solaris inet_xton thanks to Karl Bunch <karl@digilink.net> for spotting the bug. 4.014 Sat Nov 1 15:13:48 PST 2008 in Lite.pm v1.11, add test for characters not allowed by rfc952 before the call to gethostbyname in sub new() for those people that insist on using deprecated functionality :aton and OS's that fail to notice calls to gethostbyname with binary arguments. 4.013 Wed Oct 22 15:04:49 PDT 2008 In Lite.pm v1.10, add new no octal method for improperly formatted ipV4 addresses In Util.pm v1.22, eliminated dependence on PL_sawampersand thanks to Mark Martinec <Mark.Martinec@ijs.si> for spotting this and submitting a patch. In Util.pm v1.22, force -noxs mode for Win32 In Util.pm v1.22, use autoconf to configure 'C' build 4.012 Thu Oct 16 19:35:33 PDT 2008 clear build bug for Win32 in Util.pm v 1.21 4.011 released Oct 6 13:10 4.010 Sat Sep 27 17:00:28 PDT 2008 in NetAddr::IP::Util v0.19 updated test for ENDIANess in siteconf add test in inet_aton to detect overange IP dot quad values missed by some broken Socket implementations i.e. 256.1.1.1 would fail to return undef NOTE: Versions 4.008 and 4.009 had limited release to tester only and were not uploaded to CPAN. All of the v4.008, 4.009 changes are incorporated in v4.010 4.009 Tue Sep 2 19:09:57 PDT 2008 In NetAddr::IP::Lite v1.07, in the off chance that NetAddr::IP::Lite objects are created and the caller later loads NetAddr::IP and expects to use those objects, let the AUTOLOAD routine find and redirect NetAddr::IP::Lite method and subroutine calls to NetAddr::IP. updated Lite/t/v4-wnew.t so that non-existent domains are "really" not there 4.008 Sat Jun 7 14:01:55 PDT 2008 inherit method "new_from_aton" from NetAddr::IP::Lite add related documentation Inherited methods from Lite.pm updated as follows: comparisons of the form <, >, <=, >= 10.0.0.0/24 {operator} 10.0.0.0/16 return now return the comparison of the cidr value when the address portion is equal. NOTE: this comparison returns the comparison of the NUMERIC value of the CIDR. This produces the counter intuitive result that /24 > /16. There is logic to this, really! For proper operation of commands like "Compact" and "Coalesce", lists of netaddr objects must sort in ascending order. However, this conflicts with the requirement for larger netblocks to sort FIRST so as to include smaller ones. This logic extends to any requirement for a sort of netaddr objects. It should be further noted that the mixing of netaddr objects with varying IP addresses and CIDR allocations can lead to unexpected results since the comparisons done first on the IP portion and then on the CIDR portion. The documentation has been updated appropriately. Thanks to Peter DeVries for spotting this discrepancy 4.007 Wed Jun 6 16:41:11 VET 2007 Update copyright dates 4.006 Wed Jun 6 15:58:04 VET 2007 A patch from Michael got rid of $& and $` as reported by Daryl O'Shea and documented at http://issues.apache.org/SpamAssassin/show_bug.cgi?id=5312 4.004 Wed Aug 16 16:01:54 PDT 2006 update to include/exclude files in corrupted distro 4.003 Sun Aug 6 10:48:25 PDT 2006 correct SYNOPSIS documentation add :old_nth update Lite.pm documentation update Util.pm documentation Imported into distribution CVS tree - Some revision number mismatches are to be expected Latin-1 is back Fixed some angle brackets so that they show up in the docs 4.002 Fri Aug 4 14:14:16 PDT 2006 remove unused global variable $isV6 update Lite.pm to v1.02 $isV6 global converted to a lexical variable within sub "_xnew" $Class global removed and replaced by calls to UNIVERSAL::isa Thanks to julian@mehnle.net for spotting problems related to using the Lite.pm with mod_perl 4.001 Thu Jul 6 14:09:01 PDT 2006 various bug fixes courtesy of Luis Munoz: changes to Lite.pm v1.01, Util.pm v0.17 see Changes in those distros. update t/v6-re.t, addconst called as a scalar, should be called to return the address value ()[1] 4.000 Mon Jun 19 21:51:10 PDT 2006 initial release of version 4.000 which includes full support of ipV6 addresses and drops the requirement for Math::BigInt and will run on older versions of Perl at least back to 5.005_03