| Index: net/quic/crypto/proof_verifier_chromium.cc
|
| diff --git a/net/quic/crypto/proof_verifier_chromium.cc b/net/quic/crypto/proof_verifier_chromium.cc
|
| index cbb4436d3fe0291df776861716852b763d288510..732bce7027b8b46093229f8686a0f4ad7dd24130 100644
|
| --- a/net/quic/crypto/proof_verifier_chromium.cc
|
| +++ b/net/quic/crypto/proof_verifier_chromium.cc
|
| @@ -208,15 +208,14 @@ int ProofVerifierChromium::Job::DoVerifyCert(int result) {
|
| next_state_ = STATE_VERIFY_CERT_COMPLETE;
|
|
|
| int flags = 0;
|
| - return verifier_->Verify(
|
| - cert_.get(),
|
| - hostname_,
|
| - flags,
|
| - SSLConfigService::GetCRLSet().get(),
|
| - &verify_details_->cert_verify_result,
|
| - base::Bind(&ProofVerifierChromium::Job::OnIOComplete,
|
| - base::Unretained(this)),
|
| - net_log_);
|
| + return verifier_->Verify(cert_.get(),
|
| + hostname_,
|
| + flags,
|
| + SSLConfigService::GetCRLSet().get(),
|
| + &verify_details_->cert_verify_result,
|
| + base::Bind(&ProofVerifierChromium::Job::OnIOComplete,
|
| + base::Unretained(this)),
|
| + net_log_);
|
| }
|
|
|
| int ProofVerifierChromium::Job::DoVerifyCertComplete(int result) {
|
| @@ -235,8 +234,8 @@ int ProofVerifierChromium::Job::DoVerifyCertComplete(int result) {
|
| }
|
|
|
| bool ProofVerifierChromium::Job::VerifySignature(const string& signed_data,
|
| - const string& signature,
|
| - const string& cert) {
|
| + const string& signature,
|
| + const string& cert) {
|
| StringPiece spki;
|
| if (!asn1::ExtractSPKIFromDERCert(cert, &spki)) {
|
| DLOG(WARNING) << "ExtractSPKIFromDERCert failed";
|
| @@ -247,8 +246,7 @@ bool ProofVerifierChromium::Job::VerifySignature(const string& signed_data,
|
|
|
| size_t size_bits;
|
| X509Certificate::PublicKeyType type;
|
| - X509Certificate::GetPublicKeyInfo(cert_->os_cert_handle(), &size_bits,
|
| - &type);
|
| + X509Certificate::GetPublicKeyInfo(cert_->os_cert_handle(), &size_bits, &type);
|
| if (type == X509Certificate::kPublicKeyTypeRSA) {
|
| crypto::SignatureVerifier::HashAlgorithm hash_alg =
|
| crypto::SignatureVerifier::SHA256;
|
| @@ -256,9 +254,13 @@ bool ProofVerifierChromium::Job::VerifySignature(const string& signed_data,
|
| unsigned int hash_len = 32; // 32 is the length of a SHA-256 hash.
|
|
|
| bool ok = verifier.VerifyInitRSAPSS(
|
| - hash_alg, mask_hash_alg, hash_len,
|
| - reinterpret_cast<const uint8*>(signature.data()), signature.size(),
|
| - reinterpret_cast<const uint8*>(spki.data()), spki.size());
|
| + hash_alg,
|
| + mask_hash_alg,
|
| + hash_len,
|
| + reinterpret_cast<const uint8*>(signature.data()),
|
| + signature.size(),
|
| + reinterpret_cast<const uint8*>(spki.data()),
|
| + spki.size());
|
| if (!ok) {
|
| DLOG(WARNING) << "VerifyInitRSAPSS failed";
|
| return false;
|
| @@ -277,17 +279,15 @@ bool ProofVerifierChromium::Job::VerifySignature(const string& signed_data,
|
| // SHA384, or ecdsa-with-SHA512.
|
| // See also RFC 5480, Appendix A.
|
| static const uint8 kECDSAWithSHA256AlgorithmID[] = {
|
| - 0x30, 0x0a,
|
| - 0x06, 0x08,
|
| - 0x2a, 0x86, 0x48, 0xce, 0x3d, 0x04, 0x03, 0x02,
|
| + 0x30, 0x0a, 0x06, 0x08, 0x2a, 0x86, 0x48, 0xce, 0x3d, 0x04, 0x03, 0x02,
|
| };
|
|
|
| - if (!verifier.VerifyInit(
|
| - kECDSAWithSHA256AlgorithmID, sizeof(kECDSAWithSHA256AlgorithmID),
|
| - reinterpret_cast<const uint8*>(signature.data()),
|
| - signature.size(),
|
| - reinterpret_cast<const uint8*>(spki.data()),
|
| - spki.size())) {
|
| + if (!verifier.VerifyInit(kECDSAWithSHA256AlgorithmID,
|
| + sizeof(kECDSAWithSHA256AlgorithmID),
|
| + reinterpret_cast<const uint8*>(signature.data()),
|
| + signature.size(),
|
| + reinterpret_cast<const uint8*>(spki.data()),
|
| + spki.size())) {
|
| DLOG(WARNING) << "VerifyInit failed";
|
| return false;
|
| }
|
| @@ -311,7 +311,8 @@ bool ProofVerifierChromium::Job::VerifySignature(const string& signed_data,
|
| }
|
|
|
| ProofVerifierChromium::ProofVerifierChromium(CertVerifier* cert_verifier)
|
| - : cert_verifier_(cert_verifier) {}
|
| + : cert_verifier_(cert_verifier) {
|
| +}
|
|
|
| ProofVerifierChromium::~ProofVerifierChromium() {
|
| STLDeleteElements(&active_jobs_);
|
| @@ -333,8 +334,13 @@ ProofVerifierChromium::Status ProofVerifierChromium::VerifyProof(
|
| const ProofVerifyContextChromium* chromium_context =
|
| reinterpret_cast<const ProofVerifyContextChromium*>(verify_context);
|
| scoped_ptr<Job> job(new Job(this, cert_verifier_, chromium_context->net_log));
|
| - Status status = job->VerifyProof(hostname, server_config, certs, signature,
|
| - error_details, verify_details, callback);
|
| + Status status = job->VerifyProof(hostname,
|
| + server_config,
|
| + certs,
|
| + signature,
|
| + error_details,
|
| + verify_details,
|
| + callback);
|
| if (status == PENDING) {
|
| active_jobs_.insert(job.release());
|
| }
|
|
|