This is actually a fairly cool update. The 1.30 version of p5-Net-SSLeay
which we currently have in the tree just downloads a perl module which
needs to be patched. This new version is actually compiled so we gain
the benefit of our compiler improvements as well as some speed.
I wish I had a decent way to benchmark the two versions but I only have
once piece of code which uses this module.
There is no maintainer.
If you're the committer, you'll need to cvs remove
patches/patch-SSLeay_pm and cvs add the new
patches/patch-t_handle_external_10_destroy_t file.
The attached diff takes care of the removal and addition for testing.
Tested: i386
Index: Makefile
===================================================================
RCS file: /cvs/ports/security/p5-Net_SSLeay/Makefile,v
retrieving revision 1.25
diff -u -p -r1.25 Makefile
--- Makefile 15 Sep 2007 23:30:00 -0000 1.25
+++ Makefile 18 Dec 2007 12:08:27 -0000
@@ -5,19 +5,20 @@ SHARED_ONLY= Yes
COMMENT= perl module for using OpenSSL
MODULES= cpan
-VERSION= 1.30
-DISTNAME= Net_SSLeay.pm-${VERSION}
-PKGNAME= p5-Net-SSLeay-${VERSION}p0
+DISTNAME= Net-SSLeay-1.32
CATEGORIES= security
-MASTER_SITES= ${MASTER_SITE_PERL_CPAN:=Net/}
-
# same terms as OpenSSL
PERMIT_PACKAGE_CDROM= Yes
PERMIT_PACKAGE_FTP= Yes
PERMIT_DISTFILES_CDROM= Yes
PERMIT_DISTFILES_FTP= Yes
WANTLIB= crypto ssl
+
+REGRESS_DEPENDS=::devel/p5-Test-Exception \
+ ::devel/p5-Test-NoWarnings \
+ ::devel/p5-Test-Pod \
+ ::devel/p5-Test-Warn
PLDIR= ${PREFIX}/share/examples/p5-Net-SSLeay
SRCDIR= ${WRKSRC}/examples
Index: distinfo
===================================================================
RCS file: /cvs/ports/security/p5-Net_SSLeay/distinfo,v
retrieving revision 1.13
diff -u -p -r1.13 distinfo
--- distinfo 5 Apr 2007 17:26:09 -0000 1.13
+++ distinfo 18 Dec 2007 12:08:27 -0000
@@ -1,5 +1,5 @@
-MD5 (Net_SSLeay.pm-1.30.tar.gz) = sM1sFoG7wGldgb5c2FLR0A==
-RMD160 (Net_SSLeay.pm-1.30.tar.gz) = 0WD35R8WIBiAsLl+KRSUMpGhrH4=
-SHA1 (Net_SSLeay.pm-1.30.tar.gz) = wCCvVWpD2DZ1uuRBnWOjSt4wq4E=
-SHA256 (Net_SSLeay.pm-1.30.tar.gz) = QIRV9g5hau0N76jwpr62/+ohnTqP20Njca+gprNcOMU=
-SIZE (Net_SSLeay.pm-1.30.tar.gz) = 78629
+MD5 (Net-SSLeay-1.32.tar.gz) = PgkYpxAWM/Bs/k98oAWRfg==
+RMD160 (Net-SSLeay-1.32.tar.gz) = YUA6dSlib2xWJ5DANGWa+YyeKeE=
+SHA1 (Net-SSLeay-1.32.tar.gz) = 5XxsNvDfe/IRxDWjgzDeLpPRQbs=
+SHA256 (Net-SSLeay-1.32.tar.gz) = jnwexo6joKxBeA7xUL24qLmC9GBmxUKpo5/jlaiDRPo=
+SIZE (Net-SSLeay-1.32.tar.gz) = 130187
Index: patches/patch-Makefile_PL
===================================================================
RCS file: /cvs/ports/security/p5-Net_SSLeay/patches/patch-Makefile_PL,v
retrieving revision 1.4
diff -u -p -r1.4 patch-Makefile_PL
--- patches/patch-Makefile_PL 21 Jan 2006 18:02:56 -0000 1.4
+++ patches/patch-Makefile_PL 18 Dec 2007 12:08:27 -0000
@@ -1,12 +1,20 @@
-$OpenBSD: patch-Makefile_PL,v 1.4 2006/01/21 18:02:56 sturm Exp $
---- Makefile.PL.orig Sun Aug 17 09:12:55 2003
-+++ Makefile.PL Sat Jan 21 18:57:39 2006
-@@ -46,7 +46,7 @@ $openssl_path = '/opt/ssl' if -x '/opt/s
- || -x '/opt/ssl/sbin/openssl';
- $openssl_path = '/usr/local/ssl' if -x '/usr/local/ssl/bin/openssl';
- $openssl_path = '/apps/openssl/std' if -x '/apps/openssl/std/bin/openssl';
--$openssl_path = shift if @ARGV && $ARGV[0] ne '--';
-+#$openssl_path = shift if @ARGV && $ARGV[0] ne '--';
+$OpenBSD$
+--- Makefile.PL.orig Sat Dec 8 18:06:02 2007
++++ Makefile.PL Sat Dec 8 18:08:06 2007
+@@ -10,11 +10,16 @@ all_from('lib/Net/SSLeay.pm');
- shift if $ARGV[0] eq '--'; # Rest of args are for MakeMaker
+ ssleay();
++=pod
++
+ build_requires('Sub::Uplevel');
+ build_requires('Test::Exception');
+ build_requires('Array::Compare');
+ build_requires('Tree::DAG_Node');
+ build_requires('Test::Warn');
++
++=cut
++
+ requires('MIME::Base64');
+
+ clean_files(map { fixpath($_) } qw(
Index: patches/patch-SSLeay_pm
===================================================================
RCS file: /cvs/ports/security/p5-Net_SSLeay/patches/patch-SSLeay_pm,v
retrieving revision 1.1
diff -u -p -r1.1 patch-SSLeay_pm
--- patches/patch-SSLeay_pm 21 Jan 2006 18:02:56 -0000 1.1
+++ patches/patch-SSLeay_pm 18 Dec 2007 12:08:27 -0000
@@ -1,22 +0,0 @@
-$OpenBSD: patch-SSLeay_pm,v 1.1 2006/01/21 18:02:56 sturm Exp $
---- SSLeay.pm.orig Sat Jan 21 18:58:09 2006
-+++ SSLeay.pm Sat Jan 21 18:58:31 2006
-@@ -1853,8 +1853,8 @@ sub randomize (;$$) {
- my ($rn_seed_file, $seed, $egd_path) = @_;
- my $rnsf = defined($rn_seed_file) && -r $rn_seed_file;
-
-+ $egd_path = '';
- $egd_path = $ENV{'EGD_PATH'} if $ENV{'EGD_PATH'};
-- $egd_path = '/tmp/entropy' unless $egd_path;
-
- RAND_seed(rand() + $$); # Stir it with time and pid
-
-@@ -1865,7 +1865,7 @@ sub randomize (;$$) {
- RAND_load_file($rn_seed_file, -s _) if $rnsf;
- RAND_seed($seed) if $seed;
- RAND_seed($ENV{RND_SEED}) if $ENV{RND_SEED};
-- RAND_egd($egd_path) if -S $egd_path;
-+ RAND_egd($egd_path) if -e $egd_path && -S _;
- RAND_load_file($Net::SSLeay::random_device, $Net::SSLeay::how_random/8)
- if -r $Net::SSLeay::random_device;
- }
Index: patches/patch-t_handle_external_10_destroy_t
===================================================================
RCS file: patches/patch-t_handle_external_10_destroy_t
diff -N patches/patch-t_handle_external_10_destroy_t
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-t_handle_external_10_destroy_t 18 Dec 2007 12:08:27 -0000
@@ -0,0 +1,44 @@
+$OpenBSD$
+--- t/handle/external/10_destroy.t.orig Tue Jul 3 06:53:43 2007
++++ t/handle/external/10_destroy.t Fri Dec 7 14:15:09 2007
+@@ -4,29 +4,31 @@ use strict;
+ use warnings;
+ use Test::More;
+
++use File::Spec;
++use Symbol qw(gensym);
++use Net::SSLeay::Handle;
++
++
+ my @uris = qw(
+ debianforum.de
+- bacus.pt
+ perldition.org
+ );
+
+-plan tests => scalar @uris * 2;
+-
+-use File::Spec;
+-use Symbol qw(gensym);
+-use Net::SSLeay::Handle;
+-
+ # On some platforms, such as Solaris, the act of resolving the host name
+ # opens (and leaves open) a connection to the DNS client, which breaks
+ # the fd counting algorithm below. Make sure the DNS is operating before
+ # we count the FDs for the first time.
++# Also, if one of the hosts goes down (unresolvable), we don't use it.
++my @usable;
+ for my $uri (@uris) {
+- my $dummy = gethostbyname($uri);
++ if (gethostbyname($uri)) {push (@usable, $uri);}
+ }
+
++plan tests => scalar @usable * 2;
++
+ my $fdcount_start = count_fds();
+
+-for my $uri (@uris) {
++for my $uri (@usable) {
+ {
+ my $ssl = gensym();
+ tie(*$ssl, "Net::SSLeay::Handle", $uri, 443);
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/security/p5-Net_SSLeay/pkg/PLIST,v
retrieving revision 1.11
diff -u -p -r1.11 PLIST
--- pkg/PLIST 27 Jan 2005 03:27:04 -0000 1.11
+++ pkg/PLIST 18 Dec 2007 12:08:27 -0000
@@ -4,7 +4,6 @@ ${P5ARCH}/Net/
${P5ARCH}/Net/SSLeay/
${P5ARCH}/Net/SSLeay.pm
${P5ARCH}/Net/SSLeay/Handle.pm
-${P5ARCH}/Net/ptrtstrun.pl
${P5ARCH}/auto/
${P5ARCH}/auto/Net/
${P5ARCH}/auto/Net/SSLeay/