r29786 - in /trunk/libnetaddr-ip-perl: Changes IP.pm Lite/Util/README Lite/Util/Util.pm MANIFEST META.yml debian/changelog t/lower.t
gregoa at users.alioth.debian.org
gregoa at users.alioth.debian.org
Sat Jan 17 22:19:09 UTC 2009
Author: gregoa
Date: Sat Jan 17 22:19:06 2009
New Revision: 29786
URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=29786
Log:
New upstream release.
Added:
trunk/libnetaddr-ip-perl/t/lower.t
- copied unchanged from r29785, branches/upstream/libnetaddr-ip-perl/current/t/lower.t
Modified:
trunk/libnetaddr-ip-perl/Changes
trunk/libnetaddr-ip-perl/IP.pm
trunk/libnetaddr-ip-perl/Lite/Util/README
trunk/libnetaddr-ip-perl/Lite/Util/Util.pm
trunk/libnetaddr-ip-perl/MANIFEST
trunk/libnetaddr-ip-perl/META.yml
trunk/libnetaddr-ip-perl/debian/changelog
Modified: trunk/libnetaddr-ip-perl/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libnetaddr-ip-perl/Changes?rev=29786&op=diff
==============================================================================
--- trunk/libnetaddr-ip-perl/Changes (original)
+++ trunk/libnetaddr-ip-perl/Changes Sat Jan 17 22:19:06 2009
@@ -1,6 +1,12 @@
Revision history for Perl extension NetAddr::IP
-4.022
+4.023 Fri Jan 16 14:30:40 PST 2009
+ added the capability to set the CASE of ipV6 text return
+ values to either upper or lower. Thanks to
+ Rob Riepel <riepel at networking.Stanford.EDU> for developing
+ this improvement and providing a comprehensive patch
+
+4.022 Sat Dec 20 13:05:01 PST 2008
In Util.xs 1.28
set uninitialized "carry" in XS bin2bcd to zero
Modified: trunk/libnetaddr-ip-perl/IP.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libnetaddr-ip-perl/IP.pm?rev=29786&op=diff
==============================================================================
--- trunk/libnetaddr-ip-perl/IP.pm (original)
+++ trunk/libnetaddr-ip-perl/IP.pm Sat Jan 17 22:19:06 2009
@@ -34,7 +34,7 @@
@ISA = qw(Exporter NetAddr::IP::Lite);
-$VERSION = do { sprintf " %d.%03d", (q$Revision: 4.22 $ =~ /\d+/g) };
+$VERSION = do { sprintf " %d.%03d", (q$Revision: 4.23 $ =~ /\d+/g) };
=pod
@@ -53,6 +53,8 @@
V4net
netlimit
:aton DEPRECATED
+ :lower
+ :upper
:old_storable
:old_nth
);
@@ -103,6 +105,15 @@
C<@list_of_subnets> are found to be contained in said subnet.
$arrayref = Coalesce($masklen, $number, @list_of_subnets)
+
+* By default B<NetAddr::IP> functions and methods return string IPv6
+addresses in uppercase. To change that to lowercase:
+
+ use NetAddr::IP qw(:lower);
+
+* To ensure the current IPv6 string case behavior even if the default changes:
+
+ use NetAddr::IP qw(:upper);
* To set a limit on the size of B<nets> processed or returned by
NetAddr::IP.
@@ -307,6 +318,9 @@
sub import
{
+ our $full_format = "%04X:%04X:%04X:%04X:%04X:%04X:%D.%D.%D.%D";
+ our $full6_format = "%04X:%04X:%04X:%04X:%04X:%04X:%04X:%04X";
+
if (grep { $_ eq ':old_storable' } @_) {
@_ = grep { $_ ne ':old_storable' } @_;
} else {
@@ -338,6 +352,20 @@
{
$NetAddr::IP::Lite::Old_nth = 1;
@_ = grep { $_ ne ':old_nth' } @_;
+ }
+ if (grep { $_ eq ':lower' } @_)
+ {
+ $full_format = lc($full_format);
+ $full6_format = lc($full6_format);
+ NetAddr::IP::Util::lower();
+ @_ = grep { $_ ne ':lower' } @_;
+ }
+ if (grep { $_ eq ':upper' } @_)
+ {
+ $full_format = uc($full_format);
+ $full6_format = uc($full6_format);
+ NetAddr::IP::Util::upper();
+ @_ = grep { $_ ne ':upper' } @_;
}
NetAddr::IP->export_to_level(1, @_);
}
@@ -758,7 +786,7 @@
$hex[8] = $hex[7] >> 8;
$hex[7] = $hex[6] & 0xff;
$hex[6] >>= 8;
- return sprintf("%04X:%04X:%04X:%04X:%04X:%04X:%d.%d.%d.%d", at hex);
+ return sprintf($full_format, at hex);
} else {
&full6;
}
@@ -766,7 +794,7 @@
sub full6($) {
my @hex = (unpack("n8",$_[0]->{addr}));
- return sprintf("%04X:%04X:%04X:%04X:%04X:%04X:%04X:%04X", at hex);
+ return sprintf($full6_format, at hex);
}
=item C<$me-E<gt>contains($other)>
Modified: trunk/libnetaddr-ip-perl/Lite/Util/README
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libnetaddr-ip-perl/Lite/Util/README?rev=29786&op=diff
==============================================================================
--- trunk/libnetaddr-ip-perl/Lite/Util/README (original)
+++ trunk/libnetaddr-ip-perl/Lite/Util/README Sat Jan 17 22:19:06 2009
@@ -74,6 +74,9 @@
$bits128 = bcd2bin($bcdtxt);
$modetext = mode;
+ NetAddr::IP::Util::lower();
+ NetAddr::IP::Util::upper();
+
INSTALLATION
Un-tar the distribution in an appropriate directory and type:
@@ -297,6 +300,12 @@
input: none
returns: "Pure Perl"
or "CC XS"
+
+ * NetAddr::IP::Util::lower();
+ Return IPv6 strings in lowercase.
+
+ * NetAddr::IP::Util::upper();
+ Return IPv6 strings in uppercase. This is the default.
EXAMPLES
# convert any textual IP address into a 128 bit vector
Modified: trunk/libnetaddr-ip-perl/Lite/Util/Util.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libnetaddr-ip-perl/Lite/Util/Util.pm?rev=29786&op=diff
==============================================================================
--- trunk/libnetaddr-ip-perl/Lite/Util/Util.pm (original)
+++ trunk/libnetaddr-ip-perl/Lite/Util/Util.pm Sat Jan 17 22:19:06 2009
@@ -110,6 +110,14 @@
$Mode = 'CC XS';
}
+# allow user to choose upper or lower case
+
+our $n2x_format = "%X:%X:%X:%X:%X:%X:%X:%X";
+our $n2d_format = "%X:%X:%X:%X:%X:%X:%D.%D.%D.%D";
+
+sub upper { $n2x_format = uc($n2x_format); $n2d_format = uc($n2d_format); }
+sub lower { $n2x_format = lc($n2x_format); $n2d_format = lc($n2d_format); }
+
# if Socket lib is broken in some way, check for overange values
#
my $overange = yinet_aton('256.1') ? 1:0;
@@ -210,6 +218,9 @@
$bits128 = bcd2bin($bcdtxt);
$modetext = mode;
+ NetAddr::IP::Util::lower();
+ NetAddr::IP::Util::upper();
+
=head1 INSTALLATION
Un-tar the distribution in an appropriate directory and type:
@@ -320,7 +331,7 @@
sub ipv6_n2x {
die "Bad arg length for 'ipv6_n2x', length is ". length($_[0]) ." should be 16"
unless length($_[0]) == 16;
- return sprintf("%X:%X:%X:%X:%X:%X:%X:%X",unpack("n8",$_[0]));
+ return sprintf($n2x_format,unpack("n8",$_[0]));
}
=item * $dec_text = ipv6_n2d($ipv6addr);
@@ -342,7 +353,7 @@
$hex[8] = $hex[7] >> 8;
$hex[7] = $hex[6] & 0xff;
$hex[6] >>= 8;
- return sprintf("%X:%X:%X:%X:%X:%X:%d.%d.%d.%d", at hex);
+ return sprintf($n2d_format, at hex);
}
=item * $ipv6naddr = inet_any2n($dotquad or $ipv6_text);
@@ -586,6 +597,14 @@
input: none
returns: "Pure Perl"
or "CC XS"
+
+=item * NetAddr::IP::Util::lower();
+
+Return IPv6 strings in lowercase.
+
+=item * NetAddr::IP::Util::upper();
+
+Return IPv6 strings in uppercase. This is the default.
=back
Modified: trunk/libnetaddr-ip-perl/MANIFEST
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libnetaddr-ip-perl/MANIFEST?rev=29786&op=diff
==============================================================================
--- trunk/libnetaddr-ip-perl/MANIFEST (original)
+++ trunk/libnetaddr-ip-perl/MANIFEST Sat Jan 17 22:19:06 2009
@@ -107,6 +107,7 @@
t/full6.t
t/imhoff.t
t/loops.t
+t/lower.t
t/masklen.t
t/new-store.t
t/old-store.t
Modified: trunk/libnetaddr-ip-perl/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libnetaddr-ip-perl/META.yml?rev=29786&op=diff
==============================================================================
--- trunk/libnetaddr-ip-perl/META.yml (original)
+++ trunk/libnetaddr-ip-perl/META.yml Sat Jan 17 22:19:06 2009
@@ -1,6 +1,6 @@
--- #YAML:1.0
name: NetAddr-IP
-version: 4.022
+version: 4.023
abstract: Manages IPv4 and IPv6 addresses and subnets
license: ~
author:
Modified: trunk/libnetaddr-ip-perl/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libnetaddr-ip-perl/debian/changelog?rev=29786&op=diff
==============================================================================
--- trunk/libnetaddr-ip-perl/debian/changelog (original)
+++ trunk/libnetaddr-ip-perl/debian/changelog Sat Jan 17 22:19:06 2009
@@ -1,3 +1,9 @@
+libnetaddr-ip-perl (4.023+dfsg-1) UNRELEASED; urgency=low
+
+ * New upstream release.
+
+ -- gregor herrmann <gregoa at debian.org> Sat, 17 Jan 2009 23:18:16 +0100
+
libnetaddr-ip-perl (4.022+dfsg-1) unstable; urgency=low
* New upstream release.
More information about the Pkg-perl-cvs-commits
mailing list