diff options
Diffstat (limited to 'payload_consumer/payload_verifier.cc')
-rw-r--r-- | payload_consumer/payload_verifier.cc | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/payload_consumer/payload_verifier.cc b/payload_consumer/payload_verifier.cc index 24e337ec..8a3ea650 100644 --- a/payload_consumer/payload_verifier.cc +++ b/payload_consumer/payload_verifier.cc @@ -172,9 +172,7 @@ bool PayloadVerifier::VerifyRawSignature( if (padded_hash_data == sig_hash_data) { return true; } - } - - if (key_type == EVP_PKEY_EC) { + } else if (key_type == EVP_PKEY_EC) { EC_KEY* ec_key = EVP_PKEY_get0_EC_KEY(public_key.get()); TEST_AND_RETURN_FALSE(ec_key != nullptr); if (ECDSA_verify(0, @@ -185,10 +183,10 @@ bool PayloadVerifier::VerifyRawSignature( ec_key) == 1) { return true; } + } else { + LOG(ERROR) << "Unsupported key type " << key_type; + return false; } - - LOG(ERROR) << "Unsupported key type " << key_type; - return false; } LOG(INFO) << "Failed to verify the signature with " << public_keys_.size() << " keys."; @@ -203,7 +201,7 @@ bool PayloadVerifier::GetRawHashFromSignature( // // openssl rsautl -verify -pubin -inkey <(echo pem_public_key) // -in |sig_data| -out |out_hash_data| - RSA* rsa = EVP_PKEY_get0_RSA(public_key); + RSA* rsa = EVP_PKEY_get0_RSA(const_cast<EVP_PKEY*>(public_key)); TEST_AND_RETURN_FALSE(rsa != nullptr); unsigned int keysize = RSA_size(rsa); |