36 lines
1.3 KiB
Diff
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/^.*=//;
|