generic-poky/meta/recipes-connectivity/openssl/openssl-0.9.8s/debian/rehash-crt.patch

36 lines
1.3 KiB
Diff

Upstream-Status: Backport [debian]
Index: openssl-0.9.8k/tools/c_rehash.in
===================================================================
--- openssl-0.9.8k.orig/tools/c_rehash.in 2002-10-11 22:31:27.000000000 +0200
+++ openssl-0.9.8k/tools/c_rehash.in 2009-07-19 11:36:26.000000000 +0200
@@ -59,12 +59,15 @@
}
}
closedir DIR;
- FILE: foreach $fname (grep {/\.pem$/} @flist) {
+ FILE: foreach $fname (grep {/\.pem$|\.crt$/} @flist) {
# Check to see if certificates and/or CRLs present.
my ($cert, $crl) = check_file($fname);
if(!$cert && !$crl) {
- print STDERR "WARNING: $fname does not contain a certificate or CRL: skipping\n";
- next;
+ ($cert, $crl) = check_file("$openssl x509 -in \"$fname\" -inform der -outform pem | ");
+ if(!$cert && !$crl) {
+ print STDERR "WARNING: $fname does not contain a certificate or CRL: skipping\n";
+ next;
+ }
}
link_hash_cert($fname) if($cert);
link_hash_crl($fname) if($crl);
@@ -102,6 +105,9 @@
my $fname = $_[0];
$fname =~ s/'/'\\''/g;
my ($hash, $fprint) = `"$openssl" x509 -hash -fingerprint -noout -in '$fname'`;
+ if(!$hash || !fprint) {
+ ($hash, $fprint) = `"$openssl" x509 -hash -fingerprint -noout -in '$fname' -inform der`;
+ }
chomp $hash;
chomp $fprint;
$fprint =~ s/^.*=//;