summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenny Baumann <BenBE@geshi.org>2014-01-08 01:55:59 +0100
committerBenny Baumann <BenBE@geshi.org>2014-01-08 01:55:59 +0100
commit0f08a1c6681a872d0229ef950edc57b4630122d2 (patch)
tree1c3987146f6c38c61d07fbdf9d6f1d5a130c7546
parentbeef667c8fc1dd6e41807732358174832d801ecf (diff)
downloadcacert-devel-0f08a1c6681a872d0229ef950edc57b4630122d2.tar.gz
cacert-devel-0f08a1c6681a872d0229ef950edc57b4630122d2.tar.xz
cacert-devel-0f08a1c6681a872d0229ef950edc57b4630122d2.zip
bug 1237: Properly parse Message Digest from database
-rwxr-xr-xCommModule/client.pl11
1 files changed, 9 insertions, 2 deletions
diff --git a/CommModule/client.pl b/CommModule/client.pl
index bf92b27..c71102c 100755
--- a/CommModule/client.pl
+++ b/CommModule/client.pl
@@ -834,8 +834,15 @@ sub HandleCerts($$)
my $days=$org?($server?(365*2):365):calculateDays($row{"memid"});
-
- $crt=Request($ver,1,1,$row{'rootcert'}-1,$profile,$row{'md'}eq"sha1"?2:0,$days,$row{'keytype'}eq"NS"?1:0,$content,$SAN,$subject);
+ $md_id = 0;
+ $md_id = 1 if( $raw{'md'} eq "md5");
+ $md_id = 2 if( $raw{'md'} eq "sha1");
+ $md_id = 3 if( $raw{'md'} eq "rmd160");
+ $md_id = 8 if( $raw{'md'} eq "sha256");
+ $md_id = 9 if( $raw{'md'} eq "sha384");
+ $md_id =10 if( $raw{'md'} eq "sha512");
+
+ $crt=Request($ver,1,1,$row{'rootcert'}-1,$profile,$md_id,$days,$row{'keytype'}eq"NS"?1:0,$content,$SAN,$subject);
if(length($crt))
{
if($crt=~m/^-----BEGIN CERTIFICATE-----/)