Index: net/base/cert_verify_proc.cc |
=================================================================== |
--- net/base/cert_verify_proc.cc (revision 142157) |
+++ net/base/cert_verify_proc.cc (working copy) |
@@ -217,8 +217,9 @@ |
} |
// static |
+// NOTE: This implementation assumes and enforces that the hashes are SHA1. |
bool CertVerifyProc::IsPublicKeyBlacklisted( |
- const std::vector<SHA1Fingerprint>& public_key_hashes) { |
+ const std::vector<Fingerprint>& public_key_hashes) { |
static const unsigned kNumHashes = 8; |
static const uint8 kHashes[kNumHashes][base::kSHA1Length] = { |
// Subject: CN=DigiNotar Root CA |
@@ -259,10 +260,12 @@ |
}; |
for (unsigned i = 0; i < kNumHashes; i++) { |
- for (std::vector<SHA1Fingerprint>::const_iterator |
+ for (std::vector<Fingerprint>::const_iterator |
j = public_key_hashes.begin(); j != public_key_hashes.end(); ++j) { |
- if (memcmp(j->data, kHashes[i], base::kSHA1Length) == 0) |
+ if (j->tag == FINGERPRINT_SHA1 && |
+ memcmp(j->data(), kHashes[i], base::kSHA1Length) == 0) { |
return true; |
+ } |
} |
} |