r31109 - in /trunk/libpoe-component-sslify-perl: ./ debian/ examples/ lib/POE/Component/ lib/POE/Component/SSLify/ t/
antonio-guest at users.alioth.debian.org
antonio-guest at users.alioth.debian.org
Thu Feb 26 00:05:51 UTC 2009
Author: antonio-guest
Date: Thu Feb 26 00:05:40 2009
New Revision: 31109
URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=31109
Log:
last commit after svn-upgrade
Added:
trunk/libpoe-component-sslify-perl/LICENSE
- copied unchanged from r31108, branches/upstream/libpoe-component-sslify-perl/current/LICENSE
trunk/libpoe-component-sslify-perl/examples/serverclient.pl
- copied unchanged from r31108, branches/upstream/libpoe-component-sslify-perl/current/examples/serverclient.pl
trunk/libpoe-component-sslify-perl/t/1_load.t
- copied unchanged from r31108, branches/upstream/libpoe-component-sslify-perl/current/t/1_load.t
trunk/libpoe-component-sslify-perl/t/apocalypse.t
- copied unchanged from r31108, branches/upstream/libpoe-component-sslify-perl/current/t/apocalypse.t
Removed:
trunk/libpoe-component-sslify-perl/t/a_compile.t
trunk/libpoe-component-sslify-perl/t/a_critic.t
trunk/libpoe-component-sslify-perl/t/a_dependencies.t
trunk/libpoe-component-sslify-perl/t/a_distribution.t
trunk/libpoe-component-sslify-perl/t/a_dosnewline.t
trunk/libpoe-component-sslify-perl/t/a_fixme.t
trunk/libpoe-component-sslify-perl/t/a_hasversion.t
trunk/libpoe-component-sslify-perl/t/a_kwalitee.t
trunk/libpoe-component-sslify-perl/t/a_manifest.t
trunk/libpoe-component-sslify-perl/t/a_minimumversion.t
trunk/libpoe-component-sslify-perl/t/a_pod.t
trunk/libpoe-component-sslify-perl/t/a_pod_coverage.t
trunk/libpoe-component-sslify-perl/t/a_pod_spelling.t
trunk/libpoe-component-sslify-perl/t/a_prereq.t
trunk/libpoe-component-sslify-perl/t/a_prereq_build.t
trunk/libpoe-component-sslify-perl/t/a_strict.t
trunk/libpoe-component-sslify-perl/t/load.t
Modified:
trunk/libpoe-component-sslify-perl/Build.PL
trunk/libpoe-component-sslify-perl/Changes
trunk/libpoe-component-sslify-perl/MANIFEST
trunk/libpoe-component-sslify-perl/MANIFEST.SKIP
trunk/libpoe-component-sslify-perl/META.yml
trunk/libpoe-component-sslify-perl/Makefile.PL
trunk/libpoe-component-sslify-perl/README
trunk/libpoe-component-sslify-perl/debian/changelog
trunk/libpoe-component-sslify-perl/examples/client.pl
trunk/libpoe-component-sslify-perl/examples/server.pl
trunk/libpoe-component-sslify-perl/lib/POE/Component/SSLify.pm
trunk/libpoe-component-sslify-perl/lib/POE/Component/SSLify/ClientHandle.pm
trunk/libpoe-component-sslify-perl/lib/POE/Component/SSLify/ServerHandle.pm
Modified: trunk/libpoe-component-sslify-perl/Build.PL
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-sslify-perl/Build.PL?rev=31109&op=diff
==============================================================================
--- trunk/libpoe-component-sslify-perl/Build.PL (original)
+++ trunk/libpoe-component-sslify-perl/Build.PL Thu Feb 26 00:05:40 2009
@@ -1,4 +1,7 @@
+# Build.PL
+use strict; use warnings;
use Module::Build;
+
my $build = Module::Build->new(
# look up Module::Build::API for the info!
'dynamic_config' => 0,
@@ -13,39 +16,15 @@
'test_files' => 't/*.t',
- 'add_to_cleanup' => [ 'META.yml', 'Makefile.PL', 'README' ], # automatically generated
+ 'add_to_cleanup' => [ 'META.yml', 'Makefile.PL', 'README', 'Manifest' ], # automatically generated
'requires' => {
# Networking
'Net::SSLeay' => '1.30',
- # Test stuff
- 'Test::More' => 0,
+ # minimum perl version
+ 'perl' => '5.006',
},
-
- 'recommends' => {
- # boo!
- },
-
- # FIXME wishlist...
-# 'test_requires' => {
-# # Test stuff
-# 'Test::Compile' => 0,
-# 'Test::Perl::Critic' => 0,
-# 'Test::Dependencies' => 0,
-# 'Test::Distribution' => 0,
-# 'Test::Fixme' => 0,
-# 'Test::HasVersion' => 0,
-# 'Test::Kwalitee' => 0,
-# 'Test::CheckManifest' => 0,
-# 'Test::MinimumVersion' => 0,
-# 'Test::Pod::Coverage' => 0,
-# 'Test::Spelling' => 0,
-# 'Test::Pod' => 0,
-# 'Test::Prereq' => 0,
-# 'Test::Strict' => 0,
-# 'Test::UseAllModules' => 0,
-# },
);
# all done!
Modified: trunk/libpoe-component-sslify-perl/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-sslify-perl/Changes?rev=31109&op=diff
==============================================================================
--- trunk/libpoe-component-sslify-perl/Changes (original)
+++ trunk/libpoe-component-sslify-perl/Changes Thu Feb 26 00:05:40 2009
@@ -1,4 +1,14 @@
Revision history for Perl extension POE::Component::SSLify.
+
+* 0.15
+
+ Added "examples/serverclient.pl" to track down same-process sslification problems, thanks LotR!
+
+ Applied patch from BinGOs to support passing custom $ctx for Server_SSLify, thanks! RT#43018
+
+ Switched over to Test::Apocalypse for easy author tests
+
+ Added experimental NONBLOCKING code, thanks ASCENT for the motivation!
* 0.14
Modified: trunk/libpoe-component-sslify-perl/MANIFEST
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-sslify-perl/MANIFEST?rev=31109&op=diff
==============================================================================
--- trunk/libpoe-component-sslify-perl/MANIFEST (original)
+++ trunk/libpoe-component-sslify-perl/MANIFEST Thu Feb 26 00:05:40 2009
@@ -1,29 +1,19 @@
Build.PL
Changes
-examples/client.pl
-examples/server.pl
-lib/POE/Component/SSLify.pm
-lib/POE/Component/SSLify/ClientHandle.pm
-lib/POE/Component/SSLify/ServerHandle.pm
Makefile.PL
MANIFEST
MANIFEST.SKIP
META.yml
README
-t/load.t
-t/a_critic.t
-t/a_kwalitee.t
-t/a_pod.t
-t/a_pod_spelling.t
-t/a_pod_coverage.t
-t/a_strict.t
-t/a_hasversion.t
-t/a_minimumversion.t
-t/a_manifest.t
-t/a_distribution.t
-t/a_compile.t
-t/a_dependencies.t
-t/a_fixme.t
-t/a_prereq.t
-t/a_prereq_build.t
-t/a_dosnewline.t
+LICENSE
+
+lib/POE/Component/SSLify.pm
+lib/POE/Component/SSLify/ClientHandle.pm
+lib/POE/Component/SSLify/ServerHandle.pm
+
+examples/client.pl
+examples/server.pl
+examples/serverclient.pl
+
+t/1_load.t
+t/apocalypse.t
Modified: trunk/libpoe-component-sslify-perl/MANIFEST.SKIP
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-sslify-perl/MANIFEST.SKIP?rev=31109&op=diff
==============================================================================
--- trunk/libpoe-component-sslify-perl/MANIFEST.SKIP (original)
+++ trunk/libpoe-component-sslify-perl/MANIFEST.SKIP Thu Feb 26 00:05:40 2009
@@ -5,9 +5,9 @@
# Avoid version control files.
\B\.svn\b
+\B\.git\b
# Avoid Makemaker generated and utility files.
-\bMANIFEST\.SKIP
\bMakefile$
\bblib/
\bMakeMaker-\d
Modified: trunk/libpoe-component-sslify-perl/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-sslify-perl/META.yml?rev=31109&op=diff
==============================================================================
--- trunk/libpoe-component-sslify-perl/META.yml (original)
+++ trunk/libpoe-component-sslify-perl/META.yml Thu Feb 26 00:05:40 2009
@@ -1,6 +1,6 @@
---
name: POE-Component-SSLify
-version: 0.14
+version: 0.15
author:
- 'Apocalypse E<lt>apocal at cpan.orgE<gt>'
abstract: SSL in the world of POE made easy
@@ -9,19 +9,19 @@
license: http://dev.perl.org/licenses/
requires:
Net::SSLeay: 1.30
- Test::More: 0
+ perl: 5.006
dynamic_config: 0
provides:
POE::Component::SSLify:
file: lib/POE/Component/SSLify.pm
- version: 0.14
+ version: 0.15
POE::Component::SSLify::ClientHandle:
file: lib/POE/Component/SSLify/ClientHandle.pm
- version: 53
+ version: 0.15
POE::Component::SSLify::ServerHandle:
file: lib/POE/Component/SSLify/ServerHandle.pm
- version: 53
-generated_by: Module::Build version 0.2808
+ version: 0.15
+generated_by: Module::Build version 0.280801
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.2.html
version: 1.2
Modified: trunk/libpoe-component-sslify-perl/Makefile.PL
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-sslify-perl/Makefile.PL?rev=31109&op=diff
==============================================================================
--- trunk/libpoe-component-sslify-perl/Makefile.PL (original)
+++ trunk/libpoe-component-sslify-perl/Makefile.PL Thu Feb 26 00:05:40 2009
@@ -1,4 +1,5 @@
-# Note: this file was auto-generated by Module::Build::Compat version 0.03
+# Note: this file was auto-generated by Module::Build::Compat version 0.2808_01
+require 5.006;
use ExtUtils::MakeMaker;
WriteMakefile
(
@@ -8,7 +9,6 @@
'EXE_FILES' => [],
'VERSION_FROM' => 'lib/POE/Component/SSLify.pm',
'PREREQ_PM' => {
- 'Test::More' => 0,
'Net::SSLeay' => '1.30'
}
)
Modified: trunk/libpoe-component-sslify-perl/README
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-sslify-perl/README?rev=31109&op=diff
==============================================================================
--- trunk/libpoe-component-sslify-perl/README (original)
+++ trunk/libpoe-component-sslify-perl/README Thu Feb 26 00:05:40 2009
@@ -89,6 +89,19 @@
Mixing Server/Client in the same program
Some users have reported success, others failure when they tried to utilize SSLify in both roles. This
would require more investigation, so please tread carefully if you need to use it!
+
+ Blocking mode
+ Normally, Net::SSLeay requires the socket to be in blocking mode for the initial handshake to work. However,
+ various users ( especially ASCENT, thanks! ) have reported success in setting nonblocking mode for clients.
+
+ In order to enable nonblocking mode, you need to set the subroutine "NONBLOCKING" to a true value in this
+ package.
+
+ sub POE::Component::SSLify::NONBLOCKING { 1 }
+ use POE::Component::SSLify;
+
+ This is a global, and an EXPERIMENTAL feature! Please, pretty please report back to me your experience with
+ this. Hopefully someday SSLify will be fully nonblocking, thanks to your help!
FUNCTIONS
Client_SSLify
@@ -127,6 +140,16 @@
NOTE: SSLify_Options must be set first!
+ Furthermore, you can pass in your own $ctx object if you desire. This allows you to set custom parameters
+ per-connection, for example.
+ my $socket = shift; # get the socket from somewhere
+ my $ctx = Net::SSLeay::CTX_new();
+ # set various options on $ctx as desired
+ $socket = Server_SSLify( $socket, $ctx );
+
+ NOTE: You can use SSLify_GetCTX to modify the global, and avoid doing this on every connection if the
+ options are the same...
+
SSLify_Options
Accepts the location of the SSL key + certificate files and does it's job
@@ -183,9 +206,35 @@
EXPORT
Stuffs all of the above functions in @EXPORT_OK so you have to request them directly
-BUGS
- On Win32 platforms SSL support is pretty shaky, please help me out with
- detailed error descriptions if it happens to you!
+ head1 SUPPORT
+
+ You can find documentation for this module with the perldoc command.
+
+ perldoc POE::Component::SSLify
+
+ Websites
+ * AnnoCPAN: Annotated CPAN documentation
+
+ <http://annocpan.org/dist/POE-Component-SSLify>
+
+ * CPAN Ratings
+
+ <http://cpanratings.perl.org/d/POE-Component-SSLify>
+
+ * RT: CPAN's request tracker
+
+ <http://rt.cpan.org/NoAuth/Bugs.html?Dist=POE-Component-SSLify>
+
+ * Search CPAN
+
+ <http://search.cpan.org/dist/POE-Component-SSLify>
+
+ Bugs
+ Please report any bugs or feature requests to "bug-poe-component-sslify
+ at rt.cpan.org", or through the web interface at
+ <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=POE-Component-SSLify>. I
+ will be notified, and then you'll automatically be notified of progress
+ on your bug as I make changes.
SEE ALSO
POE
@@ -206,7 +255,7 @@
# of places.
COPYRIGHT AND LICENSE
- Copyright 2008 by Apocalypse/Rocco Caputo
+ Copyright 2009 by Apocalypse/Rocco Caputo
This library is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.
Modified: trunk/libpoe-component-sslify-perl/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-sslify-perl/debian/changelog?rev=31109&op=diff
==============================================================================
--- trunk/libpoe-component-sslify-perl/debian/changelog (original)
+++ trunk/libpoe-component-sslify-perl/debian/changelog Thu Feb 26 00:05:40 2009
@@ -1,3 +1,9 @@
+libpoe-component-sslify-perl (0.15-1) UNRELEASED; urgency=low
+
+ * (NOT RELEASED YET) New upstream release
+
+ -- Antonio Radici <antonio at dyne.org> Thu, 26 Feb 2009 00:04:51 +0000
+
libpoe-component-sslify-perl (0.14-2) UNRELEASED; urgency=low
* debian/control: Changed: Switched Vcs-Browser field to ViewSVN
Modified: trunk/libpoe-component-sslify-perl/examples/client.pl
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-sslify-perl/examples/client.pl?rev=31109&op=diff
==============================================================================
--- trunk/libpoe-component-sslify-perl/examples/client.pl (original)
+++ trunk/libpoe-component-sslify-perl/examples/client.pl Thu Feb 26 00:05:40 2009
@@ -1,5 +1,8 @@
#!/usr/bin/perl
use strict; use warnings;
+
+# to use experimental nonblocking, uncomment this line
+#sub POE::Component::SSLify::NONBLOCKING { 1 }
use POE;
use POE::Component::SSLify qw( Client_SSLify );
Modified: trunk/libpoe-component-sslify-perl/examples/server.pl
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-sslify-perl/examples/server.pl?rev=31109&op=diff
==============================================================================
--- trunk/libpoe-component-sslify-perl/examples/server.pl (original)
+++ trunk/libpoe-component-sslify-perl/examples/server.pl Thu Feb 26 00:05:40 2009
@@ -1,5 +1,8 @@
#!/usr/bin/perl
use strict; use warnings;
+
+# to use experimental nonblocking, uncomment this line
+#sub POE::Component::SSLify::NONBLOCKING { 1 }
use POE;
use Socket qw( inet_ntoa unpack_sockaddr_in );
Modified: trunk/libpoe-component-sslify-perl/lib/POE/Component/SSLify.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-sslify-perl/lib/POE/Component/SSLify.pm?rev=31109&op=diff
==============================================================================
--- trunk/libpoe-component-sslify-perl/lib/POE/Component/SSLify.pm (original)
+++ trunk/libpoe-component-sslify-perl/lib/POE/Component/SSLify.pm Thu Feb 26 00:05:40 2009
@@ -2,9 +2,9 @@
package POE::Component::SSLify;
use strict; use warnings;
-# Initialize our version $LastChangedRevision: 53 $
+# Initialize our version
use vars qw( $VERSION );
-$VERSION = '0.14';
+$VERSION = '0.15';
# We need Net::SSLeay or all's a failure!
BEGIN {
@@ -29,6 +29,9 @@
Net::SSLeay::load_error_strings();
Net::SSLeay::SSLeay_add_ssl_algorithms();
Net::SSLeay::randomize();
+
+ # set nonblocking mode?
+ if ( ! defined &NONBLOCKING ) { *NONBLOCKING = sub () { 0 } }
}
}
@@ -51,6 +54,9 @@
# Helper sub to set blocking on a handle
sub Set_Blocking {
my $socket = shift;
+
+ # skip this? ( experimental )
+ return $socket if NONBLOCKING();
# Net::SSLeay needs blocking for setup.
#
@@ -116,6 +122,7 @@
sub Server_SSLify {
# Get the socket!
my $socket = shift;
+ my $custom_ctx = shift;
# Validation...
if ( ! defined $socket ) {
@@ -123,8 +130,8 @@
}
# If we don't have a ctx ready, we can't do anything...
- if ( ! defined $ctx ) {
- die 'Please do SSLify_Options() first';
+ if ( ! defined $ctx and ! defined $custom_ctx ) {
+ die 'Please do SSLify_Options() first ( or pass in a $ctx object )';
}
# Set blocking on
@@ -132,7 +139,7 @@
# Now, we create the new socket and bind it to our subclass of Net::SSLeay::Handle
my $newsock = gensym();
- tie( *$newsock, 'POE::Component::SSLify::ServerHandle', $socket, $ctx ) or die "Unable to tie to our subclass: $!";
+ tie( *$newsock, 'POE::Component::SSLify::ServerHandle', $socket, ( $custom_ctx || $ctx ) ) or die "Unable to tie to our subclass: $!";
# All done!
return $newsock;
@@ -152,7 +159,6 @@
# sanity
if ( ! defined $key or ! defined $cert ) {
die 'no key/cert specified';
- return;
}
# Set the default
@@ -186,7 +192,6 @@
$context = Net::SSLeay::CTX_new();
} else {
die "unknown SSL version: $version";
- return;
}
} else {
$context = Net::SSLeay::CTX_new();
@@ -345,6 +350,20 @@
Some users have reported success, others failure when they tried to utilize SSLify in both roles. This
would require more investigation, so please tread carefully if you need to use it!
+=head2 Blocking mode
+
+ Normally, Net::SSLeay requires the socket to be in blocking mode for the initial handshake to work. However,
+ various users ( especially ASCENT, thanks! ) have reported success in setting nonblocking mode for clients.
+
+ In order to enable nonblocking mode, you need to set the subroutine "NONBLOCKING" to a true value in this
+ package.
+
+ sub POE::Component::SSLify::NONBLOCKING { 1 }
+ use POE::Component::SSLify;
+
+ This is a global, and an EXPERIMENTAL feature! Please, pretty please report back to me your experience with
+ this. Hopefully someday SSLify will be fully nonblocking, thanks to your help!
+
=head1 FUNCTIONS
=head2 Client_SSLify
@@ -385,6 +404,16 @@
NOTE: SSLify_Options must be set first!
+ Furthermore, you can pass in your own $ctx object if you desire. This allows you to set custom parameters
+ per-connection, for example.
+ my $socket = shift; # get the socket from somewhere
+ my $ctx = Net::SSLeay::CTX_new();
+ # set various options on $ctx as desired
+ $socket = Server_SSLify( $socket, $ctx );
+
+ NOTE: You can use SSLify_GetCTX to modify the global, and avoid doing this on every connection if the
+ options are the same...
+
=head2 SSLify_Options
Accepts the location of the SSL key + certificate files and does it's job
@@ -447,9 +476,39 @@
Stuffs all of the above functions in @EXPORT_OK so you have to request them directly
-=head1 BUGS
-
-On Win32 platforms SSL support is pretty shaky, please help me out with detailed error descriptions if it happens to you!
+head1 SUPPORT
+
+You can find documentation for this module with the perldoc command.
+
+ perldoc POE::Component::SSLify
+
+=head2 Websites
+
+=over 4
+
+=item * AnnoCPAN: Annotated CPAN documentation
+
+L<http://annocpan.org/dist/POE-Component-SSLify>
+
+=item * CPAN Ratings
+
+L<http://cpanratings.perl.org/d/POE-Component-SSLify>
+
+=item * RT: CPAN's request tracker
+
+L<http://rt.cpan.org/NoAuth/Bugs.html?Dist=POE-Component-SSLify>
+
+=item * Search CPAN
+
+L<http://search.cpan.org/dist/POE-Component-SSLify>
+
+=back
+
+=head2 Bugs
+
+Please report any bugs or feature requests to C<bug-poe-component-sslify at rt.cpan.org>, or through
+the web interface at L<http://rt.cpan.org/NoAuth/ReportBug.html?Queue=POE-Component-SSLify>. I will be
+notified, and then you'll automatically be notified of progress on your bug as I make changes.
=head1 SEE ALSO
@@ -474,7 +533,7 @@
=head1 COPYRIGHT AND LICENSE
-Copyright 2008 by Apocalypse/Rocco Caputo
+Copyright 2009 by Apocalypse/Rocco Caputo
This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself.
Modified: trunk/libpoe-component-sslify-perl/lib/POE/Component/SSLify/ClientHandle.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-sslify-perl/lib/POE/Component/SSLify/ClientHandle.pm?rev=31109&op=diff
==============================================================================
--- trunk/libpoe-component-sslify-perl/lib/POE/Component/SSLify/ClientHandle.pm (original)
+++ trunk/libpoe-component-sslify-perl/lib/POE/Component/SSLify/ClientHandle.pm Thu Feb 26 00:05:40 2009
@@ -4,7 +4,7 @@
# Initialize our version
use vars qw( $VERSION );
-$VERSION = (qw$LastChangedRevision: 53 $)[1];
+$VERSION = '0.15';
# Import the SSL death routines
use Net::SSLeay qw( die_now die_if_ssl_error );
@@ -71,7 +71,7 @@
=head1 COPYRIGHT AND LICENSE
-Copyright 2008 by Apocalypse
+Copyright 2009 by Apocalypse
This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself.
Modified: trunk/libpoe-component-sslify-perl/lib/POE/Component/SSLify/ServerHandle.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-sslify-perl/lib/POE/Component/SSLify/ServerHandle.pm?rev=31109&op=diff
==============================================================================
--- trunk/libpoe-component-sslify-perl/lib/POE/Component/SSLify/ServerHandle.pm (original)
+++ trunk/libpoe-component-sslify-perl/lib/POE/Component/SSLify/ServerHandle.pm Thu Feb 26 00:05:40 2009
@@ -4,7 +4,7 @@
# Initialize our version
use vars qw( $VERSION );
-$VERSION = (qw$LastChangedRevision: 53 $)[1];
+$VERSION = '0.15';
# Import the SSL death routines
use Net::SSLeay qw( die_now die_if_ssl_error );
@@ -105,6 +105,8 @@
} else {
binmode $self->{'socket'};
}
+
+ return;
}
# Closes the socket
@@ -133,6 +135,8 @@
# Guess not...
$self->CLOSE();
}
+
+ return;
}
sub FILENO {
@@ -194,7 +198,7 @@
=head1 COPYRIGHT AND LICENSE
-Copyright 2008 by Apocalypse/Rocco Caputo
+Copyright 2009 by Apocalypse/Rocco Caputo
This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself.
More information about the Pkg-perl-cvs-commits
mailing list