Newer
Older
NetAddr-IP / Lite / Changes
@Michael Robinton Michael Robinton on 21 Oct 2014 9 KB Import of MIKER/NetAddr-IP-4.043 from CPAN.
  1. Revision history for Perl extension NetAddr::IP::Lite
  2.  
  3. 1.28 Wed Apr 6 11:31:19 PDT 2011
  4. Update documentation on the use of "adding constants
  5. to an IP address".
  6.  
  7. 1.27 Tue Mar 22 15:26:02 PDT 2011
  8. Update Lite.pm to encompass treatment of /31 and /127
  9. point-to-point networks as described in RFC 3021
  10.  
  11. NOTE: for /31's and /127's
  12. this changes the behavior of the following methods:
  13. first returns the "network" address
  14. last returns the "broadcast" address
  15. nth index 0 returns "network" addr instead of undef
  16. nth index 1 returns "broadcast" addr instead of undef
  17. num returns 2 instead of 0 (zero)
  18.  
  19. "old_nth" behavior is unchanged
  20.  
  21. Thanks to Todd Caine todd.caine@gmail.com for pointing this out.
  22.  
  23. 1.26 Tue Mar 8 15:18:16 PST 2011
  24. Updated "sub num" to support usable IP ranges greater than 2**32
  25.  
  26. Thanks to Jan Ploski jan@plosquare.com for finding this bug
  27.  
  28. 1.25 Sat Feb 19 10:04:00 PST 2011
  29. correction to use of Util.pm package lexicals
  30.  
  31. thanks to mishikal@yahoo.com for spotting the bug and to
  32. Mark Martinec mark.martinec+ama...@ijs.si for the solution.
  33.  
  34. 1.24 Fri Dec 17 17:47:47 PST 2010
  35. Modify subs "new" and "new6" to accomodate
  36. Cisco mask syntax that uses space instead of "/" for a separator
  37. This eliminates the need for "new_cis" and "newcis6" which are now
  38. deprecated.
  39.  
  40. Modify t/v4-cnew.t and add t/v6-cnew.t to test the above
  41.  
  42. 1.23 Fri Nov 19 10:48:01 PST 2010
  43. add :upper and :lower to Lite.pm v1.23
  44. add comments about rfc5952 requirement for lowercase ipV6 notation
  45. add test for :lower
  46.  
  47. 1.22 Tue Nov 16 16:28:37 PST 2010
  48. update new6 to properly classify short ipv4 notation
  49. i.e. 127/8 with test for ":" rather than match for \d.\d.\d.\d
  50. thanks to Steve Huff (SHUFF) * shuff@cpan.org for
  51. spotting that bug.
  52.  
  53. update t/v4-new.t for deprecated array syntax in perl 5.13
  54. was: qw(...stuff...)
  55. is: (qw(...stuff...))
  56.  
  57. thanks to Todd Rinaldo <toddr@cpan.org> for reporting this
  58.  
  59. 1.21 Thu Oct 28 14:26:19 PDT 2010
  60. fix bug where new6 improperly assigns the mask value
  61. for and ipv4 address in 32 bit space instead of 128 bit space
  62.  
  63. Thanks to Mark Martinec and Steve Huff (SHUFF) * shuff@cpan.org
  64. for spotting and replicating that bug
  65.  
  66. added new_cis and new_cis6 to Lite.pm v1.21 to accomodate
  67. Cisco syntax that has IP and MASK seperated by a space.
  68.  
  69. Updated typo in documentation that left out example
  70. print new6 stuff
  71.  
  72. 1.20 Mon Oct 25 16:22:01 PDT 2010
  73. Updated _xnew to properly handle ipV6 notation of the form
  74. xxxx:xxxx:xxxx:xxxx:xxxx:xxxx, DDD
  75.  
  76. Thanks to Dusty Mabe <Dusty.Mabe@tekelec.com> for spotting this bug
  77.  
  78. 1.19 Wed Sep 29 10:32:50 PDT 2010
  79. Conditionalize import of AF_INET6 in Util.pm
  80. NetAddr::IP::UtilPolluted
  81.  
  82. 1.18 Wed Sep 22 13:39:08 PDT 2010
  83. Added overload => 'ne' and '!=' to Lite.pm
  84.  
  85. 1.17 Tue Sep 21 17:50:50 PDT 2010
  86. Pull Socket6 stuff out of Lite and put into
  87. NetAddr::IP::Util.pm in its own namespace
  88.  
  89. 1.16 Wed Aug 11 12:45:49 PDT 2010
  90. When using Socket6, pull in missing symbol PF_INET6, which may
  91. or may not be present, from Socket.
  92.  
  93. 1.15 Tue Jul 20 15:32:23 PDT 2010
  94. Resolve named hosts using gethostbyname, followed by gethostbyname6
  95. to determine whether to set ipV6 flag
  96.  
  97. Thanks to Dusty Mabe <Dusty.Mabe@tekelec.com> for spotting this bug
  98.  
  99. 1.14 Thu Jul 8 18:17:38 PDT 2010
  100. added support for the sub "new" to resolve host6 names
  101. if the OPTIONAL perl Socket6 module is available
  102.  
  103. 1.13 Tue Dec 9 16:00:35 PST 2008
  104. added missing regexp to classify arguments as BCD numbers,
  105. apparently this has been missing from NetAddr::IP::Lite
  106. since the first release.
  107. Thanks to Carlos Vicente cvicente@cpan.org for reporting this bug.
  108.  
  109. revised UtilPP v1.7 to work around perl 5.8.4
  110. failures with certain @_ operations of goto &sub...
  111. see perl bug [ 23429]. Unfortunately, perl-5.8.4 is
  112. the distribution of choice for many solaris boxes
  113.  
  114. 1.12 Sun Nov 23 19:32:59 PST 2008
  115. repaired missing sub Zeros
  116.  
  117. added minus (-) overloading to allow the subtraction
  118. of two NetAddr::IP objects to get the difference between
  119. the object->{addr}'s as a numeric value
  120. Thanks to Rob Riepel <riepel@networking.Stanford.EDU>
  121. for the initial code and inspiration for this enhancement
  122.  
  123. 1.11 Sat Nov 1 15:13:48 PST 2008
  124. add test for characters not allowed by rfc952 before
  125. the call to gethostbyname in sub new() for those people
  126. that insist on using deprecated functionality :aton
  127. and OS's that fail to notice calls to gethostbyname
  128. with binary arguments
  129.  
  130. 1.10 Wed Oct 22 14:54:12 PDT 2008
  131. add new no octal method for improperly formatted ipV4 addresses
  132.  
  133. In Util.pm v1.22, eliminated dependence on PL_sawampersand
  134. thanks to Mark Martinec <Mark.Martinec@ijs.si>
  135. for spotting this and submitting a patch.
  136.  
  137. In Util.pm v1.22, force -noxs mode for Win32
  138.  
  139. In Util.pm v1.22, use autoconf to configure 'C' build
  140.  
  141. 1.09 Thu Oct 16 19:35:33 PDT 2008
  142. again... clear build bug for Win32 in Util.pm v 1.21
  143.  
  144. 1.08 Sat Sep 27 12:27:28 PDT 2008
  145. in Util v0.19
  146. updated test for ENDIANess in siteconf
  147.  
  148. add test in inet_aton to detect overange IP dot quad values
  149. missed by some broken Socket implementations
  150. i.e. 256.1.1.1
  151.  
  152. 1.07 Tue Sep 2 19:09:57 PDT 2008
  153. in the off chance that NetAddr::IP::Lite objects are created
  154. and the caller later loads NetAddr::IP and expects to use
  155. those objects, let the AUTOLOAD routine find and redirect
  156. NetAddr::IP::Lite method and subroutine calls to NetAddr::IP.
  157.  
  158. updated t/v4-wnew.t so that non-existent
  159. domains are "really" not there
  160.  
  161. 1.06 Sat Jun 7 12:57:18 PDT 2008
  162. add method "new_from_aton" and related documentation
  163.  
  164. comparisons of the form <, >, <=, >=
  165. 10.0.0.0/24 {operator} 10.0.0.0/16
  166. return now return the comparison of the cidr value
  167. when the address portion is equal.
  168. NOTE: this comparison returns the comparison of the NUMERIC
  169. value of the CIDR. This produces the counter intuitive result
  170. that /24 > /16. There is logic to this, really! For proper
  171. operation of commands like "Compact" and "Coalesce", lists of
  172. netaddr objects must sort in ascending order. However, this
  173. conflicts with the requirement for larger netblocks to sort
  174. FIRST so as to include smaller ones. This logic extends to
  175. any requirement for a sort of netaddr objects. It should be
  176. further noted that the mixing of netaddr objects with varying
  177. IP addresses and CIDR allocations can lead to unexpected
  178. results since the comparisons done first on the IP portion
  179. and then on the CIDR portion. The documentation has been
  180. updated appropriately.
  181. Thanks to Peter DeVries for spotting this discrepancy
  182.  
  183. 1.05 undocumented
  184. 1.04 undocumented
  185.  
  186. 1.03 Sun Aug 6 10:48:25 PDT 2006
  187. update Util.pm v0.18 documentation
  188.  
  189. 1.02 Fri Aug 4 14:14:16 PDT 2006
  190. $isV6 global converted to a lexical variable within sub "_xnew"
  191. $Class global removed and replaced by calls to UNIVERSAL::isa
  192. Thanks to julian@mehnle.net for spotting problems related to
  193. using the Lite.pm with mod_perl
  194.  
  195. 1.01 Thu Jul 6 10:46:48 PDT 2006
  196. update v4-wnew.t to warn user of possible long wait
  197. update Util.pm v0.17 -- see Changes in that distro
  198.  
  199. 1.00 Mon Jun 26 13:34:00 PDT 2006
  200. changed behavior of ->nth and ->num
  201. to 'exactly' conform to the documentation
  202.  
  203. add :old_nth tag to preserve old behavior
  204. and update tests to check both
  205.  
  206. 0.12 Sun Jun 25 16:13:00 PDT 2006
  207. imported missing 'bcd2bin'
  208.  
  209. fixed Util->new() issues with long digit strings
  210. ->new('::fffff') and non hex digits ->new('::foo').
  211. Thanks to Radoslaw Zielinski <radek42@gmail.com>
  212. for spotting these 3 bugs
  213.  
  214. 0.11 Wed Jun 14 14:53:21 PDT 2006
  215. add 'sub new6' and related functionality to methods
  216. that print or return v4/6 information or text.
  217.  
  218. add $self->{isv6} flag for hint to ipV6 status
  219.  
  220. corrected bug in sub num that miscalculated the number
  221. of IP's in a net for /31 /32
  222.  
  223. 0.10 Tue Jun 13 14:07:46 PDT 2006
  224. bring 'sub new' into full compliance with NetAddr::IP,
  225. correct compatibility with for ==,>,<,=>,>=,<=>,cmp
  226. and update documentation to reflect actual implementation
  227.  
  228. add 'copy' function that return a completely new object
  229.  
  230. export (Zero Ones V4mask V4net)
  231.  
  232. update Util.pm v0.15 so shiftleft returns original
  233. argument when the shift count is zero or undefined
  234.  
  235. 0.09 Tue Jun 6 08:37:01 PDT 2006
  236. update Util/Makefile.PM to check for link libraries
  237. that ExtUtils::MakeMaker does not find properly
  238.  
  239. remove 'use warnings' from Lite.pm for backwards
  240. compatibility with older perl versions
  241.  
  242. 0.08 Tue Jun 6 08:33:11 PDT 2006
  243. update Util.xs for build on windoze
  244.  
  245. 0.07 Tue Jun 6 08:21:12 PDT 2006
  246. update NetAddr::IP::Util to v0.12
  247.  
  248. 0.06 Mon Jun 5 21:34:28 PDT 2006
  249. fix Sparc problems in Util v0.11
  250. 1) add workaround for OS's that do not have inet_aton
  251.  
  252. 2) add workaround for compilers that do not understand
  253. #if MACRO1 == MACRO2
  254.  
  255. 0.05 Sun May 7 18:06:43 PDT 2006
  256. updated UtilPP.pm v0.06 to remove unnecessary pack(unpack) sequences
  257. to speed up ipv6->4, ipv4->6 conversions
  258.  
  259. 0.04 Fri Apr 28 17:36:28 PDT 2006
  260. left Util/Makefile.pl out of the top level distro
  261.  
  262. 0.03 Fri Apr 28 17:26:51 PDT 2006
  263. oops! left prerequisite Util 0.08 in the Makefile
  264. when it is include in this distro
  265.  
  266. 0.02 Fri Apr 28 16:11:00 PDT 2006
  267. update Lite.pm to accept ->new('addr/mask')
  268. where addr and mask are both in IP address format
  269.  
  270. add test for above t/netaddr.t
  271.  
  272. 0.01 Wed Apr 26 19:03:18 PDT 2006
  273. initial release