Newer
Older
NetAddr-IP / Changes
@Michael Robinton Michael Robinton on 21 Oct 2014 10 KB Import of MIKER/NetAddr-IP-4.040 from CPAN.
  1. Revision history for Perl extension NetAddr::IP
  2.  
  3. 4.040 Sat Feb 19 10:04:00 PST 2011
  4. correction to use of Util.pm package lexicals
  5.  
  6. thanks to mishikal@yahoo.com for spotting the bug and to
  7. Mark Martinec mark.martinec+ama...@ijs.si for the solution.
  8.  
  9. 4.039 Wed Feb 16 15:48:03 PST 2011
  10. Correct documentation for 'split' methods
  11.  
  12. 4.038 Fri Dec 17 17:47:47 PST 2010
  13. Modify subs "new" and "new6" in Lite.pm to accomodate
  14. Cisco mask syntax that uses space instead of "/" for a separator
  15. This eliminates the need for "new_cis" and "newcis6" which are now
  16. deprecated.
  17.  
  18. Modify LIte/t/v4-cnew.t and add Lite/t/v6-cnew.t to test the above
  19.  
  20. 4.037 Fri Nov 19 10:48:01 PST 2010
  21. add :upper and :lower to Lite.pm v1.23
  22. add comments about rfc5952 requirement for lowercase ipV6 notation
  23. in Lite.pm v1.23 and IP.pm
  24. add test for :lower in Lite.pm v1.23
  25.  
  26. 4.036 Tue Nov 16 16:28:37 PST 2010
  27. In Util.pm v1.35, naip_gethostbyname modified to return undef
  28. instead of 0 (zero) on failure
  29.  
  30. thanks to Terry Cassidy enaudishaylee@tc17.com for the bug report
  31.  
  32. In Util.pm v1.35, move sub's ipv6_n2d and ipv6_n2x to non-autosplit
  33. portion of module to eliminate warnings during autosplit of "our"
  34. variables
  35.  
  36. thanks to Nicholas Bamber <nicholas@periapt.co.uk>
  37. Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=517361
  38.  
  39. In Lite.pm v1.22, update new6 to properly classify short ipv4 notation
  40. i.e. 127/8 with test for ":" rather than match for \d.\d.\d.\d
  41. thanks to Steve Huff (SHUFF) * shuff@cpan.org for
  42. spotting that bug.
  43.  
  44. In Lite.pm v1.22, update t/v4-new.t for deprecated array syntax in
  45. perl 5.13
  46. was: qw(...stuff...)
  47. is: (qw(...stuff...))
  48.  
  49. thanks to Todd Rinaldo <toddr@cpan.org> for reporting this
  50.  
  51. 4.035 Thu Oct 28 14:26:19 PDT 2010
  52. fix bug in Lite v1.21 where new6 improperly assigns the mask value
  53. for and ipv4 address in 32 bit space instead of 128 bit space
  54.  
  55. Thanks to Mark Martinec and Steve Huff (SHUFF) * shuff@cpan.org
  56. for spotting and replicating that bug
  57.  
  58. added new_cis and new_cis6 to Lite.pm v1.21 to accomodate
  59. Cisco syntax that has IP and MASK seperated by a space.
  60.  
  61. Updated typo in documentation that left out example
  62. print new6 stuff
  63.  
  64. 4.034 Mon Oct 25 16:22:01 PDT 2010
  65. Updated Lite::_xnew v1.20 to properly handle ipV6 notation of the form
  66. xxxx:xxxx:xxxx:xxxx:xxxx:xxxx, DDD
  67.  
  68. Thanks to Dusty Mabe <Dusty.Mabe@tekelec.com> for spotting this bug
  69.  
  70. 4.033 Wed Sep 29 10:32:50 PDT 2010
  71. Conditionalize import of AF_INET6 in Util.pm
  72. NetAddr::IP::UtilPolluted
  73.  
  74. 4.032 Wed Sep 22 13:39:08 PDT 2010
  75. Added overload => 'ne' and '!=' to Lite.pm v1.18
  76.  
  77. 4.031 Tue Sep 21 19:21:04 PDT 2010
  78. Pull Socket6 stuff out of Lite 1.17 and put into
  79. NetAddr::IP::Util.pm 1.33 in its own namespace
  80.  
  81. 4.030 Tue Jul 20 15:32:23 PDT 2010
  82. Resolve named hosts in Lite.pm using gethostbyname, followed by
  83. gethostbyname6 to determine whether to set ipV6 flag
  84.  
  85. Thanks to Dusty Mabe <Dusty.Mabe@tekelec.com> for spotting this bug
  86.  
  87. 4.029 Thu Jul 8 18:17:38 PDT 2010
  88. In NetAddr::IP::Lite,
  89. added support for the sub "new" to resolve host6 names
  90. if the OPTIONAL perl Socket6 module is available
  91.  
  92. Thanks to "Mabe, Dusty" <Dusty.Mabe@tekelec.com> for spotting
  93. this and suggesting a fix.
  94.  
  95. 4.028 Wed May 12 14:18:20 PDT 2010
  96. In /Lite/Util/Util.xs v1.32,
  97. changed netswap() to postincrement
  98. *a++ = to *a and added increment after save to mollify some
  99. picky compilers that return possible undefined behavior.
  100.  
  101. changed type of _128x10 to 'void'
  102.  
  103. Thanks to David Bolt <dbolt@davjam.org> for the above two patches
  104.  
  105. 4.027 Tue Jun 9 10:31:11 PDT 2009
  106. In NetAddr::IP::Util v1.31,
  107. ferret out shell value for Makefile.PL when calling
  108. ./configure for systems where the 'x' bit gets lost
  109. due to bug in Archive::Tar
  110.  
  111. 4.026 Sat Mar 7 16:35:33 PST 2009
  112. make the compiler test check the environment for
  113. CC before using Perl's default compiler
  114.  
  115. 4.025 Sat Mar 7 16:15:18 PST 2009
  116. revised compiler test in Makefile.PL for Util v1.29
  117. to accomodate picky Solaris "cc"
  118.  
  119. 4.024 Mon Jan 26 00:27:32 PST 2009
  120. documentation update
  121.  
  122. 4.023 Fri Jan 16 14:30:40 PST 2009
  123. added the capability to set the CASE of ipV6 text return
  124. values to either upper or lower. Thanks to
  125. Rob Riepel <riepel@networking.Stanford.EDU> for developing
  126. this improvement and providing a comprehensive patch
  127.  
  128. 4.022 Sat Dec 20 13:05:01 PST 2008
  129. In Util.xs 1.28
  130. set uninitialized "carry" in XS bin2bcd to zero
  131.  
  132. This insidious bug only showed up on 64 bit hosts running perl 5.6.2
  133. Thanks to Oliver Paukstadt <pstadt@sourcentral.org> for taking the
  134. time to do the testing for me on his s390 system.
  135.  
  136. 4.021 Wed Dec 10 11:09:36 PST 2008
  137. Removed test code that produces a warning about all perl versions,
  138. OOPS!! instead of just the buggy 5.8.0 - 5.8.5 versions.
  139. Thanks to paul@city-fan.org for reporting this.
  140.  
  141. 4.020 Tue Dec 9 16:25:46 PST 2008
  142. cleaned up various typo's with good patch from
  143. Rob Riepel <riepel@networking.Stanford.EDU>
  144. thanks Rob.
  145.  
  146. revised UtilPP v1.7 to work around perl 5.8.4
  147. failures with certain @_ operations of goto &sub...
  148. see perl bug [ 23429]. Unfortunately, perl-5.8.4 is
  149. the distribution of choice for many solaris boxes
  150.  
  151. 4.019 Sat Nov 29 15:15:30 PST 2008
  152. in Lite/Util, add pure perl testing to XS build
  153.  
  154. 4.018 Fri Nov 28 23:19:01 PST 2008
  155. revised XS code to be full re-entrant, thread safe in Util.xs v1.26
  156. removed all traces of mutex locks in Util.xs v1.26
  157. removed function 'threads' here an in UtilPP v1.6
  158.  
  159. 4.017 Sun Nov 23 19:32:59 PST 2008
  160. Extended the capability of 'splitref' to allow splitting of
  161. objects into multiple pieces with differing CIDR masks.
  162. Returned object list can be split from bottom to top
  163. or from top to bottom depending on which method is called
  164.  
  165. split, rsplit, splitref, rsplitref
  166.  
  167. Thanks to kashmish <kashmish@gmail.com> for the idea on
  168. improving functionality of 'split'.
  169.  
  170. Thanks to Rob Riepel <riepel@networking.Stanford.EDU>
  171. for a faster and more accurate _compV6 function.
  172.  
  173. in UtitPP v1.5
  174. correct documentation error
  175. add threads reporting (empty string)
  176.  
  177. in Util v1.25
  178. add threads reporting that returns a comma separated
  179. string of build headers.
  180.  
  181. added what is hopefully thread safe operation via
  182. serialization. Must be invoked by "--with-threads"
  183.  
  184. in Lite v1.12
  185. corrected missing Zeros subroutine
  186. Zeros and Zero both will work
  187.  
  188. in Lite v1.12
  189. added minus (-) overloading to allow the subtraction
  190. of two NetAddr::IP objects to get the difference between
  191. the object->{addr}'s as a numeric value
  192. Thanks to Rob Riepel <riepel@networking.Stanford.EDU>
  193. for the initial code and inspiration for this enhancement
  194.  
  195. 4.016 Wed Nov 5 18:13:20 PST 2008
  196. in Util/ version 1.24
  197. Clean up Makefile.PL to check actual required link
  198. libraries against the perl build for consistency
  199.  
  200. 4.015 Sun Nov 2 10:10:38 PST 2008
  201. in Util v1.23 add missing headers in configure and localconf.h
  202. for Solaris inet_xton
  203. thanks to Karl Bunch <karl@digilink.net> for spotting the bug.
  204.  
  205. 4.014 Sat Nov 1 15:13:48 PST 2008
  206. in Lite.pm v1.11, add test for characters not allowed by
  207. rfc952 before the call to gethostbyname in sub new() for those
  208. people that insist on using deprecated functionality :aton
  209. and OS's that fail to notice calls to gethostbyname with
  210. binary arguments.
  211.  
  212. 4.013 Wed Oct 22 15:04:49 PDT 2008
  213. In Lite.pm v1.10, add new no octal method for
  214. improperly formatted ipV4 addresses
  215.  
  216. In Util.pm v1.22, eliminated dependence on PL_sawampersand
  217. thanks to Mark Martinec <Mark.Martinec@ijs.si>
  218. for spotting this and submitting a patch.
  219.  
  220. In Util.pm v1.22, force -noxs mode for Win32
  221.  
  222. In Util.pm v1.22, use autoconf to configure 'C' build
  223.  
  224. 4.012 Thu Oct 16 19:35:33 PDT 2008
  225. clear build bug for Win32 in Util.pm v 1.21
  226.  
  227. 4.011 released Oct 6 13:10
  228.  
  229. 4.010 Sat Sep 27 17:00:28 PDT 2008
  230. in NetAddr::IP::Util v0.19
  231. updated test for ENDIANess in siteconf
  232.  
  233. add test in inet_aton to detect overange IP dot quad values
  234. missed by some broken Socket implementations
  235. i.e. 256.1.1.1 would fail to return undef
  236.  
  237. NOTE: Versions 4.008 and 4.009 had limited release to tester only
  238. and were not uploaded to CPAN. All of the v4.008, 4.009
  239. changes are incorporated in v4.010
  240.  
  241. 4.009 Tue Sep 2 19:09:57 PDT 2008
  242. In NetAddr::IP::Lite v1.07,
  243. in the off chance that NetAddr::IP::Lite objects are created
  244. and the caller later loads NetAddr::IP and expects to use
  245. those objects, let the AUTOLOAD routine find and redirect
  246. NetAddr::IP::Lite method and subroutine calls to NetAddr::IP.
  247.  
  248. updated Lite/t/v4-wnew.t so that non-existent
  249. domains are "really" not there
  250.  
  251. 4.008 Sat Jun 7 14:01:55 PDT 2008
  252. inherit method "new_from_aton" from NetAddr::IP::Lite
  253. add related documentation
  254.  
  255. Inherited methods from Lite.pm updated as follows:
  256.  
  257. comparisons of the form <, >, <=, >=
  258. 10.0.0.0/24 {operator} 10.0.0.0/16
  259. return now return the comparison of the cidr value
  260. when the address portion is equal.
  261. NOTE: this comparison returns the comparison of the NUMERIC
  262. value of the CIDR. This produces the counter intuitive result
  263. that /24 > /16. There is logic to this, really! For proper
  264. operation of commands like "Compact" and "Coalesce", lists of
  265. netaddr objects must sort in ascending order. However, this
  266. conflicts with the requirement for larger netblocks to sort
  267. FIRST so as to include smaller ones. This logic extends to
  268. any requirement for a sort of netaddr objects. It should be
  269. further noted that the mixing of netaddr objects with varying
  270. IP addresses and CIDR allocations can lead to unexpected
  271. results since the comparisons done first on the IP portion
  272. and then on the CIDR portion. The documentation has been
  273. updated appropriately.
  274. Thanks to Peter DeVries for spotting this discrepancy
  275.  
  276. 4.007 Wed Jun 6 16:41:11 VET 2007
  277. Update copyright dates
  278.  
  279. 4.006 Wed Jun 6 15:58:04 VET 2007
  280.  
  281. A patch from Michael got rid of $& and $` as reported by Daryl
  282. O'Shea and documented at
  283. http://issues.apache.org/SpamAssassin/show_bug.cgi?id=5312
  284.  
  285. 4.004 Wed Aug 16 16:01:54 PDT 2006
  286. update to include/exclude files in corrupted distro
  287.  
  288. 4.003 Sun Aug 6 10:48:25 PDT 2006
  289. correct SYNOPSIS documentation
  290. add :old_nth
  291.  
  292. update Lite.pm documentation
  293. update Util.pm documentation
  294. Imported into distribution CVS tree - Some revision number
  295. mismatches are to be expected
  296. Latin-1 is back
  297. Fixed some angle brackets so that they show up in the docs
  298.  
  299. 4.002 Fri Aug 4 14:14:16 PDT 2006
  300. remove unused global variable $isV6
  301.  
  302. update Lite.pm to v1.02
  303. $isV6 global converted to a lexical variable within sub "_xnew"
  304. $Class global removed and replaced by calls to UNIVERSAL::isa
  305. Thanks to julian@mehnle.net for spotting problems related to
  306. using the Lite.pm with mod_perl
  307.  
  308. 4.001 Thu Jul 6 14:09:01 PDT 2006
  309. various bug fixes courtesy of Luis Munoz:
  310. changes to Lite.pm v1.01, Util.pm v0.17 see Changes in those distros.
  311. update t/v6-re.t, addconst called as a scalar, should be called to
  312. return the address value ()[1]
  313.  
  314. 4.000 Mon Jun 19 21:51:10 PDT 2006
  315. initial release of version 4.000 which includes
  316. full support of ipV6 addresses and drops the requirement
  317. for Math::BigInt and will run on older versions of Perl
  318. at least back to 5.005_03
  319.