Newer
Older
NetAddr-IP / Changes
@Michael Robinton Michael Robinton on 21 Oct 2014 15 KB Import of MIKER/NetAddr-IP-4.058 from CPAN.
  1. Revision history for Perl extension NetAddr::IP
  2.  
  3. 4.058 Fri Nov 11 19:23:11 PST 2011
  4. up rev for documentation update
  5. update documentation in InetBase v0.06
  6.  
  7. 4.057 Fri Nov 11 15:04:20 PST 2011
  8. Lite.pm v1.40
  9. add call to InetBase::fillIPv4 to all uses of gethostbyname
  10.  
  11. break out the code in InetBase v0.05 that expands short IPv4
  12. addresses into dotquad format to account for broken BSD
  13. implementations of inet_aton and gethostbyname that do
  14. not recognize the short format. EXPORT this as sub 'fillIPv4'
  15.  
  16. in Util.pm v1.45, add 'fillIPv4' to calls to gethostbyname to
  17. work around broken inet_aton and gethostbyname implementations
  18. in certain BSD implementations
  19.  
  20. 4.056 Wed Nov 2 19:15:31 PDT 2011
  21. bump rev to incorporate
  22. improved inet_aton in InetBase v0.04 to overcome broken
  23. gethostbyname found in NetBSD and OpenBSD
  24.  
  25. 4.055 Fri Oct 28 11:41:22 PDT 2011
  26. in Lite.pm v1.38
  27. patch for bug 71869, issues with Math::BigInt varients
  28.  
  29. 4.054 Thu Oct 27 12:48:55 PDT 2011
  30. In Lite.pm v1.37, remove Calc.pm
  31. add detection of early Math::Bigint object structure
  32. fix bug 71869 - a failed test routine
  33.  
  34. 4.053 Wed Oct 26 08:52:34 PDT 2011
  35. In Lite.pm v1.36
  36. fix bug #71925. A a sub-varient of #62521 that showed up only for
  37. short notation for IPv4. i.e. 127/n, 127.0/n, 127.0.0/n but
  38. not 127.0.0.0/n
  39.  
  40. 4.052 Tue Oct 25 16:18:38 PDT 2011
  41. add test in Lite.pm v1.35 for api-version of Math::BigInt to
  42. support versions earlier than 1.70, circa Dec 2003.
  43. Thanks to Paul Howarth <paul@city-fan.org> for spotting that bug.
  44.  
  45. 4.051 Mon Oct 24 14:44:53 PDT 2011
  46. fix bug 71869
  47. in Lite.pm v1.34
  48. use Math::BigInt::Calc for creating BigInt values and fall
  49. back to NetAddr::IP::Calc if Math::BigInt is not present.
  50.  
  51. remove reference to Config{osname} in InetBase.pm v0.03
  52. (Util 1.43)
  53.  
  54.  
  55. 4.050 Sat Oct 22 01:58:57 PDT 2011
  56. In Lite/Util/lib/NetAddr/IP/Lite/Util/InetBase.pm v0.02
  57. Socket6 prior to version 0.23 does not have AF_INET6 in the
  58. EXPORT_OK array, modify InetBase.pm v0.2 to work around this.
  59.  
  60. Add support for Math::BigInt to NetAddr::IP::Lite v1.33
  61.  
  62. 4.049 Sat Oct 15 22:15:10 PDT 2011
  63. Updates to Lite.pm, Util.pm, new module InetBase.pm
  64.  
  65. In Lite v1.32
  66. bug68723, add capability to parse input of the form
  67. ->new6(12345,1). This should have been there but was
  68. missing. Thanks to Andrei Benea for spotting this.
  69. In Util v1.41
  70. add inet_pton, inet_ntop, AF_INET, AF_INET6
  71.  
  72. modify inet_n2dx and inet_n2ad to
  73. recognize the new 128 bit IPv4 format
  74. ::FFFF:FFFF:0:0
  75.  
  76. replace isIPv4 with a pure perl version for portablity
  77.  
  78. split the following into NetAddr::IP::InetBase v0.01
  79. to provide better long term support for IPv6
  80. inet_aton
  81. inet_ntoa
  82. ipv6_aton
  83. ipv6_n2x
  84. ipv6_n2d
  85. inet_any2n
  86. inet_n2dx
  87. inet_n2ad
  88. inet_ntop
  89. inet_pton
  90. packzeros
  91. isIPv4
  92. isNewIPv4
  93. isAnyIPv4
  94. AF_INET
  95. AF_INET6
  96.  
  97. 4.048 Sat Oct 8 01:33:44 PDT 2011
  98. remove debug print statement from Util v1.40
  99.  
  100. 4.047 Thu Oct 6 23:41:42 PDT 2011
  101. really correct missing reference in Util v1.39
  102. doc update only in Lite.pm v1.30
  103.  
  104. 4.046 Thu Oct 6 20:20:33 PDT 2011 DEPRECATED
  105. corrected missing reference to inet_4map6 in Util v1.38
  106.  
  107. 4.045 Thu Oct 6 18:23:04 PDT 2011 DEPRECATED
  108. updated NetAddr::IP::Util 1.37
  109. addid isAnyIPv4, isNewIPv4, inet_4map6
  110. revised naip_gethostbyname
  111. to conform to Perl's gethostbyname output
  112.  
  113. 4.044 Wed May 18 14:47:34 PDT 2011
  114. added missing support for ->compactref(\@list) which is described
  115. in the documentation but not implemented.
  116.  
  117. Thanks to Rusty Bourland codebard@gmail.com for spotting this
  118. and providing both a patch and test code
  119.  
  120. 4.043 Wed Apr 6 11:31:19 PDT 2011
  121. Update documentation on the use of "adding constants
  122. to an IP address".
  123.  
  124. 4.042 Tue Mar 22 15:26:02 PDT 2011
  125. Update Lite.pm v1.27 to encompass treatment of /31 and /127
  126. point-to-point networks as described in RFC 3021
  127.  
  128. NOTE: for /31's and /127's
  129. this changes the behavior of the following methods:
  130. first returns the "network" address
  131. last returns the "broadcast" address
  132. nth index 0 returns "network" addr instead of undef
  133. nth index 1 returns "broadcast" addr instead of undef
  134. num returns 2 instead of 0 (zero)
  135.  
  136. "old_nth" behavior is unchanged
  137.  
  138. Thanks to Todd Caine todd.caine@gmail.com for pointing this out.
  139.  
  140. 4.041 Tue Mar 8 15:18:16 PST 2011
  141. Updated Lite.pm v1.26, "sub num" to support usable IP ranges
  142. greater than 2**32
  143.  
  144. Thanks to Jan Ploski jan@plosquare.com for finding this bug
  145.  
  146. 4.040 Sat Feb 19 10:04:00 PST 2011
  147. correction to use of Util.pm package lexicals
  148.  
  149. thanks to mishikal@yahoo.com for spotting the bug and to
  150. Mark Martinec mark.martinec+ama...@ijs.si for the solution.
  151.  
  152. 4.039 Wed Feb 16 15:48:03 PST 2011
  153. Correct documentation for 'split' methods
  154.  
  155. 4.038 Fri Dec 17 17:47:47 PST 2010
  156. Modify subs "new" and "new6" in Lite.pm to accomodate
  157. Cisco mask syntax that uses space instead of "/" for a separator
  158. This eliminates the need for "new_cis" and "newcis6" which are now
  159. deprecated.
  160.  
  161. Modify LIte/t/v4-cnew.t and add Lite/t/v6-cnew.t to test the above
  162.  
  163. 4.037 Fri Nov 19 10:48:01 PST 2010
  164. add :upper and :lower to Lite.pm v1.23
  165. add comments about rfc5952 requirement for lowercase ipV6 notation
  166. in Lite.pm v1.23 and IP.pm
  167. add test for :lower in Lite.pm v1.23
  168.  
  169. 4.036 Tue Nov 16 16:28:37 PST 2010
  170. In Util.pm v1.35, naip_gethostbyname modified to return undef
  171. instead of 0 (zero) on failure
  172.  
  173. thanks to Terry Cassidy enaudishaylee@tc17.com for the bug report
  174.  
  175. In Util.pm v1.35, move sub's ipv6_n2d and ipv6_n2x to non-autosplit
  176. portion of module to eliminate warnings during autosplit of "our"
  177. variables
  178.  
  179. thanks to Nicholas Bamber <nicholas@periapt.co.uk>
  180. Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=517361
  181.  
  182. In Lite.pm v1.22, update new6 to properly classify short ipv4 notation
  183. i.e. 127/8 with test for ":" rather than match for \d.\d.\d.\d
  184. thanks to Steve Huff (SHUFF) * shuff@cpan.org for
  185. spotting that bug.
  186.  
  187. In Lite.pm v1.22, update t/v4-new.t for deprecated array syntax in
  188. perl 5.13
  189. was: qw(...stuff...)
  190. is: (qw(...stuff...))
  191.  
  192. thanks to Todd Rinaldo <toddr@cpan.org> for reporting this
  193.  
  194. 4.035 Thu Oct 28 14:26:19 PDT 2010
  195. fix bug in Lite v1.21 where new6 improperly assigns the mask value
  196. for and ipv4 address in 32 bit space instead of 128 bit space
  197.  
  198. Thanks to Mark Martinec and Steve Huff (SHUFF) * shuff@cpan.org
  199. for spotting and replicating that bug
  200.  
  201. added new_cis and new_cis6 to Lite.pm v1.21 to accomodate
  202. Cisco syntax that has IP and MASK seperated by a space.
  203.  
  204. Updated typo in documentation that left out example
  205. print new6 stuff
  206.  
  207. 4.034 Mon Oct 25 16:22:01 PDT 2010
  208. Updated Lite::_xnew v1.20 to properly handle ipV6 notation of the form
  209. xxxx:xxxx:xxxx:xxxx:xxxx:xxxx, DDD
  210.  
  211. Thanks to Dusty Mabe <Dusty.Mabe@tekelec.com> for spotting this bug
  212.  
  213. 4.033 Wed Sep 29 10:32:50 PDT 2010
  214. Conditionalize import of AF_INET6 in Util.pm
  215. NetAddr::IP::UtilPolluted
  216.  
  217. 4.032 Wed Sep 22 13:39:08 PDT 2010
  218. Added overload => 'ne' and '!=' to Lite.pm v1.18
  219.  
  220. 4.031 Tue Sep 21 19:21:04 PDT 2010
  221. Pull Socket6 stuff out of Lite 1.17 and put into
  222. NetAddr::IP::Util.pm 1.33 in its own namespace
  223.  
  224. 4.030 Tue Jul 20 15:32:23 PDT 2010
  225. Resolve named hosts in Lite.pm using gethostbyname, followed by
  226. gethostbyname6 to determine whether to set ipV6 flag
  227.  
  228. Thanks to Dusty Mabe <Dusty.Mabe@tekelec.com> for spotting this bug
  229.  
  230. 4.029 Thu Jul 8 18:17:38 PDT 2010
  231. In NetAddr::IP::Lite,
  232. added support for the sub "new" to resolve host6 names
  233. if the OPTIONAL perl Socket6 module is available
  234.  
  235. Thanks to "Mabe, Dusty" <Dusty.Mabe@tekelec.com> for spotting
  236. this and suggesting a fix.
  237.  
  238. 4.028 Wed May 12 14:18:20 PDT 2010
  239. In /Lite/Util/Util.xs v1.32,
  240. changed netswap() to postincrement
  241. *a++ = to *a and added increment after save to mollify some
  242. picky compilers that return possible undefined behavior.
  243.  
  244. changed type of _128x10 to 'void'
  245.  
  246. Thanks to David Bolt <dbolt@davjam.org> for the above two patches
  247.  
  248. 4.027 Tue Jun 9 10:31:11 PDT 2009
  249. In NetAddr::IP::Util v1.31,
  250. ferret out shell value for Makefile.PL when calling
  251. ./configure for systems where the 'x' bit gets lost
  252. due to bug in Archive::Tar
  253.  
  254. 4.026 Sat Mar 7 16:35:33 PST 2009
  255. make the compiler test check the environment for
  256. CC before using Perl's default compiler
  257.  
  258. 4.025 Sat Mar 7 16:15:18 PST 2009
  259. revised compiler test in Makefile.PL for Util v1.29
  260. to accomodate picky Solaris "cc"
  261.  
  262. 4.024 Mon Jan 26 00:27:32 PST 2009
  263. documentation update
  264.  
  265. 4.023 Fri Jan 16 14:30:40 PST 2009
  266. added the capability to set the CASE of ipV6 text return
  267. values to either upper or lower. Thanks to
  268. Rob Riepel <riepel@networking.Stanford.EDU> for developing
  269. this improvement and providing a comprehensive patch
  270.  
  271. 4.022 Sat Dec 20 13:05:01 PST 2008
  272. In Util.xs 1.28
  273. set uninitialized "carry" in XS bin2bcd to zero
  274.  
  275. This insidious bug only showed up on 64 bit hosts running perl 5.6.2
  276. Thanks to Oliver Paukstadt <pstadt@sourcentral.org> for taking the
  277. time to do the testing for me on his s390 system.
  278.  
  279. 4.021 Wed Dec 10 11:09:36 PST 2008
  280. Removed test code that produces a warning about all perl versions,
  281. OOPS!! instead of just the buggy 5.8.0 - 5.8.5 versions.
  282. Thanks to paul@city-fan.org for reporting this.
  283.  
  284. 4.020 Tue Dec 9 16:25:46 PST 2008
  285. cleaned up various typo's with good patch from
  286. Rob Riepel <riepel@networking.Stanford.EDU>
  287. thanks Rob.
  288.  
  289. revised UtilPP v1.7 to work around perl 5.8.4
  290. failures with certain @_ operations of goto &sub...
  291. see perl bug [ 23429]. Unfortunately, perl-5.8.4 is
  292. the distribution of choice for many solaris boxes
  293.  
  294. 4.019 Sat Nov 29 15:15:30 PST 2008
  295. in Lite/Util, add pure perl testing to XS build
  296.  
  297. 4.018 Fri Nov 28 23:19:01 PST 2008
  298. revised XS code to be full re-entrant, thread safe in Util.xs v1.26
  299. removed all traces of mutex locks in Util.xs v1.26
  300. removed function 'threads' here an in UtilPP v1.6
  301.  
  302. 4.017 Sun Nov 23 19:32:59 PST 2008
  303. Extended the capability of 'splitref' to allow splitting of
  304. objects into multiple pieces with differing CIDR masks.
  305. Returned object list can be split from bottom to top
  306. or from top to bottom depending on which method is called
  307.  
  308. split, rsplit, splitref, rsplitref
  309.  
  310. Thanks to kashmish <kashmish@gmail.com> for the idea on
  311. improving functionality of 'split'.
  312.  
  313. Thanks to Rob Riepel <riepel@networking.Stanford.EDU>
  314. for a faster and more accurate _compV6 function.
  315.  
  316. in UtitPP v1.5
  317. correct documentation error
  318. add threads reporting (empty string)
  319.  
  320. in Util v1.25
  321. add threads reporting that returns a comma separated
  322. string of build headers.
  323.  
  324. added what is hopefully thread safe operation via
  325. serialization. Must be invoked by "--with-threads"
  326.  
  327. in Lite v1.12
  328. corrected missing Zeros subroutine
  329. Zeros and Zero both will work
  330.  
  331. in Lite v1.12
  332. added minus (-) overloading to allow the subtraction
  333. of two NetAddr::IP objects to get the difference between
  334. the object->{addr}'s as a numeric value
  335. Thanks to Rob Riepel <riepel@networking.Stanford.EDU>
  336. for the initial code and inspiration for this enhancement
  337.  
  338. 4.016 Wed Nov 5 18:13:20 PST 2008
  339. in Util/ version 1.24
  340. Clean up Makefile.PL to check actual required link
  341. libraries against the perl build for consistency
  342.  
  343. 4.015 Sun Nov 2 10:10:38 PST 2008
  344. in Util v1.23 add missing headers in configure and localconf.h
  345. for Solaris inet_xton
  346. thanks to Karl Bunch <karl@digilink.net> for spotting the bug.
  347.  
  348. 4.014 Sat Nov 1 15:13:48 PST 2008
  349. in Lite.pm v1.11, add test for characters not allowed by
  350. rfc952 before the call to gethostbyname in sub new() for those
  351. people that insist on using deprecated functionality :aton
  352. and OS's that fail to notice calls to gethostbyname with
  353. binary arguments.
  354.  
  355. 4.013 Wed Oct 22 15:04:49 PDT 2008
  356. In Lite.pm v1.10, add new no octal method for
  357. improperly formatted ipV4 addresses
  358.  
  359. In Util.pm v1.22, eliminated dependence on PL_sawampersand
  360. thanks to Mark Martinec <Mark.Martinec@ijs.si>
  361. for spotting this and submitting a patch.
  362.  
  363. In Util.pm v1.22, force -noxs mode for Win32
  364.  
  365. In Util.pm v1.22, use autoconf to configure 'C' build
  366.  
  367. 4.012 Thu Oct 16 19:35:33 PDT 2008
  368. clear build bug for Win32 in Util.pm v 1.21
  369.  
  370. 4.011 released Oct 6 13:10
  371.  
  372. 4.010 Sat Sep 27 17:00:28 PDT 2008
  373. in NetAddr::IP::Util v0.19
  374. updated test for ENDIANess in siteconf
  375.  
  376. add test in inet_aton to detect overange IP dot quad values
  377. missed by some broken Socket implementations
  378. i.e. 256.1.1.1 would fail to return undef
  379.  
  380. NOTE: Versions 4.008 and 4.009 had limited release to tester only
  381. and were not uploaded to CPAN. All of the v4.008, 4.009
  382. changes are incorporated in v4.010
  383.  
  384. 4.009 Tue Sep 2 19:09:57 PDT 2008
  385. In NetAddr::IP::Lite v1.07,
  386. in the off chance that NetAddr::IP::Lite objects are created
  387. and the caller later loads NetAddr::IP and expects to use
  388. those objects, let the AUTOLOAD routine find and redirect
  389. NetAddr::IP::Lite method and subroutine calls to NetAddr::IP.
  390.  
  391. updated Lite/t/v4-wnew.t so that non-existent
  392. domains are "really" not there
  393.  
  394. 4.008 Sat Jun 7 14:01:55 PDT 2008
  395. inherit method "new_from_aton" from NetAddr::IP::Lite
  396. add related documentation
  397.  
  398. Inherited methods from Lite.pm updated as follows:
  399.  
  400. comparisons of the form <, >, <=, >=
  401. 10.0.0.0/24 {operator} 10.0.0.0/16
  402. return now return the comparison of the cidr value
  403. when the address portion is equal.
  404. NOTE: this comparison returns the comparison of the NUMERIC
  405. value of the CIDR. This produces the counter intuitive result
  406. that /24 > /16. There is logic to this, really! For proper
  407. operation of commands like "Compact" and "Coalesce", lists of
  408. netaddr objects must sort in ascending order. However, this
  409. conflicts with the requirement for larger netblocks to sort
  410. FIRST so as to include smaller ones. This logic extends to
  411. any requirement for a sort of netaddr objects. It should be
  412. further noted that the mixing of netaddr objects with varying
  413. IP addresses and CIDR allocations can lead to unexpected
  414. results since the comparisons done first on the IP portion
  415. and then on the CIDR portion. The documentation has been
  416. updated appropriately.
  417. Thanks to Peter DeVries for spotting this discrepancy
  418.  
  419. 4.007 Wed Jun 6 16:41:11 VET 2007
  420. Update copyright dates
  421.  
  422. 4.006 Wed Jun 6 15:58:04 VET 2007
  423.  
  424. A patch from Michael got rid of $& and $` as reported by Daryl
  425. O'Shea and documented at
  426. http://issues.apache.org/SpamAssassin/show_bug.cgi?id=5312
  427.  
  428. 4.004 Wed Aug 16 16:01:54 PDT 2006
  429. update to include/exclude files in corrupted distro
  430.  
  431. 4.003 Sun Aug 6 10:48:25 PDT 2006
  432. correct SYNOPSIS documentation
  433. add :old_nth
  434.  
  435. update Lite.pm documentation
  436. update Util.pm documentation
  437. Imported into distribution CVS tree - Some revision number
  438. mismatches are to be expected
  439. Latin-1 is back
  440. Fixed some angle brackets so that they show up in the docs
  441.  
  442. 4.002 Fri Aug 4 14:14:16 PDT 2006
  443. remove unused global variable $isV6
  444.  
  445. update Lite.pm to v1.02
  446. $isV6 global converted to a lexical variable within sub "_xnew"
  447. $Class global removed and replaced by calls to UNIVERSAL::isa
  448. Thanks to julian@mehnle.net for spotting problems related to
  449. using the Lite.pm with mod_perl
  450.  
  451. 4.001 Thu Jul 6 14:09:01 PDT 2006
  452. various bug fixes courtesy of Luis Munoz:
  453. changes to Lite.pm v1.01, Util.pm v0.17 see Changes in those distros.
  454. update t/v6-re.t, addconst called as a scalar, should be called to
  455. return the address value ()[1]
  456.  
  457. 4.000 Mon Jun 19 21:51:10 PDT 2006
  458. initial release of version 4.000 which includes
  459. full support of ipV6 addresses and drops the requirement
  460. for Math::BigInt and will run on older versions of Perl
  461. at least back to 5.005_03
  462.