Hi,

Net-SSLeay 1.79 provides a function RSA_get_key_parameters() that
only works with OpenSSL < 1.1.  As it works also with our LibreSSL,
I have added a #ifdef for that.

ok?

bluhm

Index: security/p5-Net_SSLeay/Makefile
===================================================================
RCS file: /data/mirror/openbsd/cvs/ports/security/p5-Net_SSLeay/Makefile,v
retrieving revision 1.63
diff -u -p -r1.63 Makefile
--- security/p5-Net_SSLeay/Makefile     16 Aug 2016 16:34:07 -0000      1.63
+++ security/p5-Net_SSLeay/Makefile     4 Jan 2017 16:03:15 -0000
@@ -2,7 +2,7 @@
 
 COMMENT =              perl module for using OpenSSL
 
-DISTNAME =             Net-SSLeay-1.78
+DISTNAME =             Net-SSLeay-1.79
 
 CATEGORIES =           security
 
Index: security/p5-Net_SSLeay/distinfo
===================================================================
RCS file: /data/mirror/openbsd/cvs/ports/security/p5-Net_SSLeay/distinfo,v
retrieving revision 1.40
diff -u -p -r1.40 distinfo
--- security/p5-Net_SSLeay/distinfo     16 Aug 2016 16:34:07 -0000      1.40
+++ security/p5-Net_SSLeay/distinfo     4 Jan 2017 16:03:25 -0000
@@ -1,2 +1,2 @@
-SHA256 (Net-SSLeay-1.78.tar.gz) = 5/VkJ2AviXRGATuEuf9RuOirT84LvQhsTijBmKlC7VM=
-SIZE (Net-SSLeay-1.78.tar.gz) = 394554
+SHA256 (Net-SSLeay-1.79.tar.gz) = RbdwUJEhBI3lA/G7OWwSAfC+017sNc9Ey/4yTQ4aKH0=
+SIZE (Net-SSLeay-1.79.tar.gz) = 395257
Index: security/p5-Net_SSLeay/patches/patch-SSLeay_xs
===================================================================
RCS file: security/p5-Net_SSLeay/patches/patch-SSLeay_xs
diff -N security/p5-Net_SSLeay/patches/patch-SSLeay_xs
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ security/p5-Net_SSLeay/patches/patch-SSLeay_xs      4 Jan 2017 16:36:26 
-0000
@@ -0,0 +1,12 @@
+$OpenBSD$
+--- SSLeay.xs.orig     Tue Nov  1 22:44:35 2016
++++ SSLeay.xs  Wed Jan  4 17:36:16 2017
+@@ -4972,7 +4972,7 @@ RSA_generate_key(bits,e,perl_cb=&PL_sv_undef,perl_data
+ 
+ #endif
+ 
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
+ 
+ void
+ RSA_get_key_parameters(rsa)
Index: security/p5-Net_SSLeay/patches/patch-t_local_33_x509_create_cert_t
===================================================================
RCS file: security/p5-Net_SSLeay/patches/patch-t_local_33_x509_create_cert_t
diff -N security/p5-Net_SSLeay/patches/patch-t_local_33_x509_create_cert_t
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ security/p5-Net_SSLeay/patches/patch-t_local_33_x509_create_cert_t  4 Jan 
2017 16:39:42 -0000
@@ -0,0 +1,28 @@
+$OpenBSD$
+--- t/local/33_x509_create_cert.t.orig Tue Nov  1 22:46:12 2016
++++ t/local/33_x509_create_cert.t      Wed Jan  4 17:39:35 2017
+@@ -2,7 +2,7 @@
+ 
+ use strict;
+ use warnings;
+-use Test::More tests => 122;
++use Test::More tests => 123;
+ use Net::SSLeay qw/MBSTRING_ASC MBSTRING_UTF8 EVP_PK_RSA EVP_PKT_SIGN 
EVP_PKT_ENC/;
+ use File::Spec;
+ use utf8;
+@@ -32,9 +32,12 @@ is(Net::SSLeay::X509_NAME_cmp($ca_issuer, $ca_subject)
+   ok(my $rsa = Net::SSLeay::RSA_generate_key(2048, &Net::SSLeay::RSA_F4), 
"RSA_generate_key");
+   ok(Net::SSLeay::EVP_PKEY_assign_RSA($pk,$rsa), "EVP_PKEY_assign_RSA");
+ 
+-# ONly in pre 1.1:
+-#  my @params = Net::SSLeay::RSA_get_key_parameters($rsa);
+-#  ok(@params == 8, "RSA_get_key_parameters");
++  SKIP: {
++    skip 'openssl<1.1.0 required', 1 unless Net::SSLeay::SSLeay < 0x1100000
++      or Net::SSLeay::constant("LIBRESSL_VERSION_NUMBER");
++    my @params = Net::SSLeay::RSA_get_key_parameters($rsa);
++    ok(@params == 8, "RSA_get_key_parameters");
++  }
+ 
+   ok(my $x509  = Net::SSLeay::X509_new(), "X509_new");
+   ok(Net::SSLeay::X509_set_pubkey($x509,$pk), "X509_set_pubkey");

Reply via email to