Bug#596082: unblock: libcrypt-openssl-x509-perl/1.4-1
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock
Please unblock libcrypt-openssl-x509-perl/1.4-1. It fixes a segfault in
the fingerprint_sha1 method[1] and a bug that causes new_from_string to
fail for some certificates[2].
unblock libcrypt-openssl-x509-perl/1.4-1
Regards,
Ansgar
PS: Please CC: debian-perl@lists.debian.org in replies.
[1] <http://bugs.debian.org/596068>
[2] <http://bugs.debian.org/596069>
Index: X509.pm
===================================================================
--- X509.pm (.../1.2-1) (revision 62408)
+++ X509.pm (.../1.4-1) (revision 62408)
@@ -5,7 +5,7 @@ use vars qw($VERSION @EXPORT_OK);
use Exporter;
use base qw(Exporter);
-$VERSION = '1.2';
+$VERSION = '1.4';
@EXPORT_OK = qw(
FORMAT_UNDEF FORMAT_ASN1 FORMAT_TEXT FORMAT_PEM FORMAT_NETSCAPE
Index: debian/control
===================================================================
--- debian/control (.../1.2-1) (revision 62408)
+++ debian/control (.../1.4-1) (revision 62408)
@@ -2,13 +2,13 @@ Source: libcrypt-openssl-x509-perl
Section: perl
Priority: optional
Build-Depends: debhelper (>= 7.2.13), libssl-dev, libtest-pod-perl,
- perl (>= 5.10.0)
+ perl
Maintainer: Debian Perl Group <pkg-perl-maintainers@lists.alioth.debian.org>
Uploaders: Micah Anderson <micah@debian.org>,
gregor herrmann <gregoa@debian.org>, Niko Tyni <ntyni@debian.org>,
Damyan Ivanov <dmn@debian.org>, Ansgar Burchardt <ansgar@43-1.org>,
Salvatore Bonaccorso <salvatore.bonaccorso@gmail.com>
-Standards-Version: 3.8.4
+Standards-Version: 3.9.1
Homepage: http://search.cpan.org/dist/Crypt-OpenSSL-X509/
Vcs-Svn: svn://svn.debian.org/pkg-perl/trunk/libcrypt-openssl-x509-perl/
Vcs-Browser: http://svn.debian.org/viewsvn/pkg-perl/trunk/libcrypt-openssl-x509-perl/
Index: debian/changelog
===================================================================
--- debian/changelog (.../1.2-1) (revision 62408)
+++ debian/changelog (.../1.4-1) (revision 62408)
@@ -1,3 +1,21 @@
+libcrypt-openssl-x509-perl (1.4-1) unstable; urgency=low
+
+ * New upstream release
+ * Refresh debian/copyright file wording.
+
+ -- Salvatore Bonaccorso <salvatore.bonaccorso@gmail.com> Tue, 31 Aug 2010 17:35:33 +0200
+
+libcrypt-openssl-x509-perl (1.3-1) unstable; urgency=low
+
+ * New upstream release
+ * debian/control: Substitute versioned Build-Depends on perl (>=
+ 5.10.0) with unversioned one, as stable has already this version and
+ oldstable is gone.
+ * debian/copyright: Explicitly point to GPL-1 text in common-licenses.
+ * Bump Standards-Version to 3.9.1.
+
+ -- Salvatore Bonaccorso <salvatore.bonaccorso@gmail.com> Fri, 06 Aug 2010 19:05:21 +0200
+
libcrypt-openssl-x509-perl (1.2-1) unstable; urgency=low
* New upstream release
Index: debian/copyright
===================================================================
--- debian/copyright (.../1.2-1) (revision 62408)
+++ debian/copyright (.../1.4-1) (revision 62408)
@@ -27,8 +27,8 @@ License: Artistic
This program is free software; you can redistribute it and/or modify
it under the terms of the Artistic License, which comes with Perl.
.
- On Debian GNU/Linux systems, the complete text of the Artistic License
- can be found in `/usr/share/common-licenses/Artistic'
+ On Debian systems, the complete text of the Artistic License can be
+ found in `/usr/share/common-licenses/Artistic'.
License: GPL-1+
This program is free software; you can redistribute it and/or modify
@@ -36,5 +36,5 @@ License: GPL-1+
the Free Software Foundation; either version 1, or (at your option)
any later version.
.
- On Debian GNU/Linux systems, the complete text of the GNU General
- Public License can be found in `/usr/share/common-licenses/GPL'
+ On Debian systems, the complete text of version 1 of the GNU General
+ Public License can be found in `/usr/share/common-licenses/GPL-1'.
Index: t/x509.t
===================================================================
--- t/x509.t (.../1.2-1) (revision 62408)
+++ t/x509.t (.../1.4-1) (revision 62408)
@@ -1,5 +1,5 @@
-use Test::More tests => 43;
+use Test::More tests => 46;
BEGIN { use_ok('Crypt::OpenSSL::X509') };
@@ -8,6 +8,7 @@ ok(my $x509 = Crypt::OpenSSL::X509->new_from_file(
ok($x509->serial() eq '325033CF50D156F35C81AD655C4FC825', 'serial()');
ok($x509->fingerprint_md5() eq '51:86:E8:1F:BC:B1:C3:71:B5:18:10:DB:5F:DC:F6:20', 'fingerprint_md5()');
+ok($x509->fingerprint_sha1() eq '78:E9:DD:06:50:62:4D:B9:CB:36:B5:07:67:F2:09:B8:43:BE:15:B3', 'fingerprint_sha1()');
ok($x509->exponent() eq '10001', 'exponent()');
ok($x509->pub_exponent() eq '10001', 'pub_exponent()'); # Alias
@@ -71,3 +72,13 @@ is($x509->subject_name()->get_index_by_long_type("
isa_ok($x509->subject_name()->get_entry_by_type("ST"),"Crypt::OpenSSL::X509::Name_Entry",'Name->get_entry_by_type');
ok($x509->subject_name()->get_entry_by_type("ST")->is_printableString(),'Name_Entry->is_printableString');
ok(not($x509->subject_name()->get_entry_by_type("ST")->is_asn1_type(Crypt::OpenSSL::X509::V_ASN1_UTF8STRING)),'Name_Entry->is_asn1_type');
+
+# Check new_from_string / as_string round trip.
+{
+ my $x509 = Crypt::OpenSSL::X509->new_from_string(
+ Crypt::OpenSSL::X509->new_from_file('certs/balt.pem')->as_string(1),
+ 1);
+
+ ok($x509);
+ ok($x509->serial() eq '020000B9', 'serial()');
+}
Index: Changes
===================================================================
--- Changes (.../1.2-1) (revision 62408)
+++ Changes (.../1.4-1) (revision 62408)
@@ -1,5 +1,11 @@
Revision history for Perl extension Crypt::OpenSSL::X509.
+1.4 Tue Aug 31 07:13:20 PDT 2010
+ - Fix new_from_string().
+
+1.3 Fri Aug 6 09:18:30 PDT 2010
+ - Fix fingerprint_sha1().
+
1.2 Mon May 31 05:59:03 PDT 2010
- Compatible with OpenSSL v1.0.0
- Incompatible change: Removed fingerprint_md2 method.
Index: README
===================================================================
--- README (.../1.2-1) (revision 62408)
+++ README (.../1.4-1) (revision 62408)
@@ -1,4 +1,4 @@
-Crypt/OpenSSL/X509 version 1.2
+Crypt/OpenSSL/X509 version 1.4
===============================
The README is used to introduce the module and provide instructions on
Index: X509.xs
===================================================================
--- X509.xs (.../1.2-1) (revision 62408)
+++ X509.xs (.../1.4-1) (revision 62408)
@@ -291,7 +291,7 @@ new(class)
Crypt::OpenSSL::X509
new_from_string(class, string, format = FORMAT_PEM)
SV *class
- char *string
+ SV *string
int format
ALIAS:
@@ -299,13 +299,17 @@ new_from_string(class, string, format = FORMAT_PEM
PREINIT:
BIO *bio;
+ STRLEN len;
+ char *cert;
CODE:
+ cert = SvPV(string, len);
+
if (ix == 1) {
- bio = BIO_new_file(string, "r");
+ bio = BIO_new_file(cert, "r");
} else {
- bio = BIO_new_mem_buf(string, strlen(string));
+ bio = BIO_new_mem_buf(cert, len);
}
if (!bio) croak("%s: Failed to create BIO", SvPV_nolen(class));
@@ -320,10 +324,10 @@ new_from_string(class, string, format = FORMAT_PEM
RETVAL = (X509*)PEM_read_bio_X509(bio, NULL, NULL, NULL);
}
+ BIO_free_all(bio);
+
if (!RETVAL) croak("%s: failed to read X509 certificate.", SvPV_nolen(class));
- BIO_free_all(bio);
-
OUTPUT:
RETVAL
@@ -583,7 +587,7 @@ fingerprint_md5(x509)
Crypt::OpenSSL::X509 x509;
ALIAS:
- fingerprint_sha1 = 2
+ fingerprint_sha1 = 1
PREINIT:
Reply to: