Index: head/security/p5-Crypt-OpenSSL-RSA/files/patch-t_rsa.t =================================================================== --- head/security/p5-Crypt-OpenSSL-RSA/files/patch-t_rsa.t (revision 473569) +++ head/security/p5-Crypt-OpenSSL-RSA/files/patch-t_rsa.t (nonexistent) @@ -1,27 +0,0 @@ ---- t/rsa.t.orig 2017-06-19 18:08:26 UTC -+++ t/rsa.t -@@ -4,7 +4,7 @@ use Test; - use Crypt::OpenSSL::Random; - use Crypt::OpenSSL::RSA; - --BEGIN { plan tests => 43 + (UNIVERSAL::can("Crypt::OpenSSL::RSA", "use_sha512_hash") ? 4*5 : 0) } -+BEGIN { plan tests => 46 + (UNIVERSAL::can("Crypt::OpenSSL::RSA", "use_sha512_hash") ? 4*5 : 0) } - - sub _Test_Encrypt_And_Decrypt - { -@@ -83,6 +83,15 @@ my $private_key_string = $rsa->get_private_key_string( - my $public_key_string = $rsa->get_public_key_string(); - - ok($private_key_string and $public_key_string); -+ -+my $enc_private_key_string_default = $rsa->get_private_key_string('12345'); -+ok($enc_private_key_string_default); -+ -+my $enc_private_key_string_des3 = $rsa->get_private_key_string('12345', 'des3-cbc'); -+ok($enc_private_key_string_des3); -+ -+my $enc_private_key_string_idea = $rsa->get_private_key_string('12345', 'IDEA'); -+ok($enc_private_key_string_idea); - - my $plaintext = "The quick brown fox jumped over the lazy dog"; - my $rsa_priv = Crypt::OpenSSL::RSA->new_private_key($private_key_string); Property changes on: head/security/p5-Crypt-OpenSSL-RSA/files/patch-t_rsa.t ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/security/p5-Crypt-OpenSSL-RSA/files/patch-RSA.pm =================================================================== --- head/security/p5-Crypt-OpenSSL-RSA/files/patch-RSA.pm (revision 473569) +++ head/security/p5-Crypt-OpenSSL-RSA/files/patch-RSA.pm (nonexistent) @@ -1,61 +0,0 @@ ---- RSA.pm.orig 2017-06-19 18:08:26 UTC -+++ RSA.pm -@@ -14,8 +14,31 @@ $VERSION = '0.28'; - - bootstrap Crypt::OpenSSL::RSA $VERSION; - -+sub new_private_key { -+ -+ my ($self, $keystring, $passin) = @_; -+ -+ if (length ($passin) > 0 ) { -+ return $self->_new_enc_private_key($keystring, $passin); -+ } -+ return $self->_new_private_key($keystring); -+} -+ -+sub get_private_key_string { -+ -+ my ($self, $passout, $cipher) = @_; -+ -+ if (length ($passout) > 0 && length ($cipher) > 0) { -+ return $self->_get_enc_private_key_string($passout, $cipher); -+ } elsif (length $passout > 0) { -+ return $self->_get_enc_private_key_string($passout, "aes-256-cbc"); -+ } -+ return $self->_get_private_key_string(); -+} -+ - BEGIN { eval { require Crypt::OpenSSL::Bignum; }; } - -+ - 1; - - __END__ -@@ -96,7 +119,9 @@ sub new_public_key - } - } - --=item new_private_key -+=item new_private_key(privkey_string) -+=cut -+=item new_private_key(privkey_string, password) - - Create a new Crypt::OpenSSL::RSA object by loading a private key in - from an string containing the Base64/DER encoding of the PKCS1 -@@ -179,8 +204,14 @@ header and footer lines: - and is the format that is produced by running C. - - =item get_private_key_string -+=cut -+=item get_enc_private_key_string(password) -+=cut -+=item get_enc_private_key_string(password, cipher) - --Return the DER-encoded PKCS1 representation of the private key. -+Return the unencripted or encripted DER-encoded PKCS1 representation -+of the private key. For stoping of potential leak unencrypted private key -+if cipher name is unknown will use DES3 (DES-EDE3) cipher. - - =item encrypt - Property changes on: head/security/p5-Crypt-OpenSSL-RSA/files/patch-RSA.pm ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/security/p5-Crypt-OpenSSL-RSA/files/patch-RSA.xs =================================================================== --- head/security/p5-Crypt-OpenSSL-RSA/files/patch-RSA.xs (revision 473569) +++ head/security/p5-Crypt-OpenSSL-RSA/files/patch-RSA.xs (nonexistent) @@ -1,109 +0,0 @@ ---- RSA.xs.orig 2017-06-19 18:08:26 UTC -+++ RSA.xs -@@ -179,6 +179,30 @@ RSA* _load_rsa_key(SV* p_keyStringSv, - return rsa; - } - -+ -+RSA* _load_enc_rsa_key(SV* p_keyStringSv, -+ RSA*(*p_loader)(BIO*, RSA**, pem_password_cb*, void*), char* password) -+{ -+ STRLEN keyStringLength; -+ char* keyString; -+ -+ RSA* rsa; -+ BIO* stringBIO; -+ -+ keyString = SvPV(p_keyStringSv, keyStringLength); -+ -+ CHECK_OPEN_SSL(stringBIO = BIO_new_mem_buf(keyString, keyStringLength)); -+ -+ rsa = p_loader(stringBIO, NULL, NULL, password); -+ -+ CHECK_OPEN_SSL(BIO_set_close(stringBIO, BIO_CLOSE) == 1); -+ BIO_free(stringBIO); -+ -+ CHECK_OPEN_SSL(rsa); -+ return rsa; -+} -+ -+ - SV* rsa_crypt(rsaData* p_rsa, SV* p_from, - int (*p_crypt)(int, const unsigned char*, unsigned char*, RSA*, int)) - { -@@ -214,7 +238,7 @@ BOOT: - ERR_load_crypto_strings(); - - SV* --new_private_key(proto, key_string_SV) -+_new_private_key(proto, key_string_SV) - SV* proto; - SV* key_string_SV; - CODE: -@@ -223,7 +247,24 @@ new_private_key(proto, key_string_SV) - OUTPUT: - RETVAL - -+ - SV* -+_new_enc_private_key(proto, key_string_SV, password_SV) -+ SV* proto; -+ SV* key_string_SV; -+ SV* password_SV; -+ PREINIT: -+ char* password; -+ CODE: -+ password = SvPV_nolen(password_SV); -+ -+ RETVAL = make_rsa_obj( -+ proto, _load_enc_rsa_key(key_string_SV, PEM_read_bio_RSAPrivateKey, password)); -+ OUTPUT: -+ RETVAL -+ -+ -+SV* - _new_public_key_pkcs1(proto, key_string_SV) - SV* proto; - SV* key_string_SV; -@@ -251,7 +292,7 @@ DESTROY(p_rsa) - Safefree(p_rsa); - - SV* --get_private_key_string(p_rsa) -+_get_private_key_string(p_rsa) - rsaData* p_rsa; - PREINIT: - BIO* stringBIO; -@@ -259,6 +300,32 @@ get_private_key_string(p_rsa) - CHECK_OPEN_SSL(stringBIO = BIO_new(BIO_s_mem())); - PEM_write_bio_RSAPrivateKey( - stringBIO, p_rsa->rsa, NULL, NULL, 0, NULL, NULL); -+ RETVAL = extractBioString(stringBIO); -+ -+ OUTPUT: -+ RETVAL -+ -+ -+SV* -+_get_enc_private_key_string(p_rsa, passout_SV, cipher_SV) -+ rsaData* p_rsa; -+ SV* passout_SV; -+ SV* cipher_SV; -+ PREINIT: -+ char* passout; -+ char* cipher; -+ -+ BIO* stringBIO; -+ const EVP_CIPHER *enc; -+ CODE: -+ passout = SvPV_nolen(passout_SV); -+ cipher = SvPV_nolen(cipher_SV); -+ -+ CHECK_OPEN_SSL(stringBIO = BIO_new(BIO_s_mem())); -+ enc = EVP_get_cipherbyname(cipher); -+ if (enc == NULL) { enc = EVP_get_cipherbyname("DES3"); } -+ PEM_write_bio_RSAPrivateKey( -+ stringBIO, p_rsa->rsa, enc, NULL, 0, NULL, passout); - RETVAL = extractBioString(stringBIO); - - OUTPUT: Property changes on: head/security/p5-Crypt-OpenSSL-RSA/files/patch-RSA.xs ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/security/p5-Crypt-OpenSSL-RSA/Makefile =================================================================== --- head/security/p5-Crypt-OpenSSL-RSA/Makefile (revision 473569) +++ head/security/p5-Crypt-OpenSSL-RSA/Makefile (revision 473570) @@ -1,27 +1,25 @@ # Created by: nork@cityfujisawa.ne.jp # $FreeBSD$ PORTNAME= Crypt-OpenSSL-RSA -PORTVERSION= 0.28 -PORTREVISION= 2 +PORTVERSION= 0.30 CATEGORIES= security perl5 MASTER_SITES= CPAN PKGNAMEPREFIX= p5- MAINTAINER= perl@FreeBSD.org COMMENT= Perl5 module to RSA encode and decode strings using OpenSSL LICENSE= ART10 GPLv1+ LICENSE_COMB= dual +LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= p5-Crypt-OpenSSL-Bignum>=0:security/p5-Crypt-OpenSSL-Bignum \ + p5-Crypt-OpenSSL-Guess>=0.11:security/p5-Crypt-OpenSSL-Guess \ p5-Crypt-OpenSSL-Random>=0:security/p5-Crypt-OpenSSL-Random RUN_DEPENDS:= ${BUILD_DEPENDS} -BROKEN_SSL= openssl-devel - USES= perl5 ssl USE_PERL5= configure -MAKE_ARGS= PASTHRU_INC=-I${OPENSSLINC} .include Index: head/security/p5-Crypt-OpenSSL-RSA/distinfo =================================================================== --- head/security/p5-Crypt-OpenSSL-RSA/distinfo (revision 473569) +++ head/security/p5-Crypt-OpenSSL-RSA/distinfo (revision 473570) @@ -1,2 +1,3 @@ -SHA256 (Crypt-OpenSSL-RSA-0.28.tar.gz) = 5357f977464bb3a8184cf2d3341851a10d5515b4b2b0dfb88bf78995c0ded7be -SIZE (Crypt-OpenSSL-RSA-0.28.tar.gz) = 20035 +TIMESTAMP = 1529588705 +SHA256 (Crypt-OpenSSL-RSA-0.30.tar.gz) = 23e13531397af102db4fd24bcf70137add7c85c23cca697c43aa71c2959a29ac +SIZE (Crypt-OpenSSL-RSA-0.30.tar.gz) = 24664