Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(424)

Side by Side Diff: net/quic/crypto/proof_verifier_chromium.cc

Issue 1652603002: Add information to SSLInfo about CT EV policy compliance (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: expand a comment Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "net/quic/crypto/proof_verifier_chromium.h" 5 #include "net/quic/crypto/proof_verifier_chromium.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/bind_helpers.h" 10 #include "base/bind_helpers.h"
(...skipping 266 matching lines...) Expand 10 before | Expand all | Expand 10 after
277 base::Unretained(this)), 277 base::Unretained(this)),
278 &cert_verifier_request_, net_log_); 278 &cert_verifier_request_, net_log_);
279 } 279 }
280 280
281 int ProofVerifierChromium::Job::DoVerifyCertComplete(int result) { 281 int ProofVerifierChromium::Job::DoVerifyCertComplete(int result) {
282 cert_verifier_request_.reset(); 282 cert_verifier_request_.reset();
283 283
284 const CertVerifyResult& cert_verify_result = 284 const CertVerifyResult& cert_verify_result =
285 verify_details_->cert_verify_result; 285 verify_details_->cert_verify_result;
286 const CertStatus cert_status = cert_verify_result.cert_status; 286 const CertStatus cert_status = cert_verify_result.cert_status;
287 verify_details_->ct_verify_result.ct_policies_applied =
288 (result == OK && policy_enforcer_ != nullptr);
Ryan Sleevi 2016/02/05 02:09:25 Not sure I grok why this is tracked?
estark 2016/02/08 08:36:26 See previous reply.
289 verify_details_->ct_verify_result.ev_policy_compliance =
290 CTPolicyEnforcer::EV_POLICY_DOES_NOT_APPLY;
287 if (result == OK && policy_enforcer_ && 291 if (result == OK && policy_enforcer_ &&
288 (cert_verify_result.cert_status & CERT_STATUS_IS_EV)) { 292 (cert_verify_result.cert_status & CERT_STATUS_IS_EV)) {
289 if (!policy_enforcer_->DoesConformToCTEVPolicy( 293 CTPolicyEnforcer::EVPolicyCompliance ev_policy_compliance =
294 policy_enforcer_->DoesConformToCTEVPolicy(
290 cert_verify_result.verified_cert.get(), 295 cert_verify_result.verified_cert.get(),
291 SSLConfigService::GetEVCertsWhitelist().get(), 296 SSLConfigService::GetEVCertsWhitelist().get(),
292 verify_details_->ct_verify_result, net_log_)) { 297 verify_details_->ct_verify_result.verified_scts, net_log_);
298 verify_details_->ct_verify_result.ev_policy_compliance =
299 ev_policy_compliance;
300 if (ev_policy_compliance !=
301 CTPolicyEnforcer::EV_POLICY_COMPLIES_VIA_WHITELIST &&
302 ev_policy_compliance != CTPolicyEnforcer::EV_POLICY_COMPLIES_VIA_SCTS) {
293 verify_details_->cert_verify_result.cert_status |= 303 verify_details_->cert_verify_result.cert_status |=
294 CERT_STATUS_CT_COMPLIANCE_FAILED; 304 CERT_STATUS_CT_COMPLIANCE_FAILED;
295 verify_details_->cert_verify_result.cert_status &= ~CERT_STATUS_IS_EV; 305 verify_details_->cert_verify_result.cert_status &= ~CERT_STATUS_IS_EV;
296 } 306 }
297 } 307 }
298 308
299 // TODO(estark): replace 0 below with the port of the connection. 309 // TODO(estark): replace 0 below with the port of the connection.
300 if (transport_security_state_ && 310 if (transport_security_state_ &&
301 (result == OK || 311 (result == OK ||
302 (IsCertificateError(result) && IsCertStatusMinorError(cert_status))) && 312 (IsCertificateError(result) && IsCertStatusMinorError(cert_status))) &&
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after
436 } 446 }
437 return status; 447 return status;
438 } 448 }
439 449
440 void ProofVerifierChromium::OnJobComplete(Job* job) { 450 void ProofVerifierChromium::OnJobComplete(Job* job) {
441 active_jobs_.erase(job); 451 active_jobs_.erase(job);
442 delete job; 452 delete job;
443 } 453 }
444 454
445 } // namespace net 455 } // namespace net
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698