Index: net/spdy/spdy_test_util_common.cc |
diff --git a/net/spdy/spdy_test_util_common.cc b/net/spdy/spdy_test_util_common.cc |
index bda9c8322b48bb183ae4318dbef9d9f23d1bcbdd..2c3907a602ab64335f585e63c724267a1a099324 100644 |
--- a/net/spdy/spdy_test_util_common.cc |
+++ b/net/spdy/spdy_test_util_common.cc |
@@ -16,6 +16,7 @@ |
#include "base/strings/string_split.h" |
#include "net/base/host_port_pair.h" |
#include "net/cert/ct_policy_enforcer.h" |
+#include "net/cert/ct_policy_status.h" |
#include "net/cert/mock_cert_verifier.h" |
#include "net/cert/multi_log_ct_verifier.h" |
#include "net/http/http_cache.h" |
@@ -400,6 +401,43 @@ HttpNetworkSession::Params SpdySessionDependencies::CreateSessionParams( |
return params; |
} |
+class AllowAnyCertCTPolicyEnforcer : public CTPolicyEnforcer { |
+ public: |
+ AllowAnyCertCTPolicyEnforcer(){}; |
+ ~AllowAnyCertCTPolicyEnforcer() override = default; |
+ |
+ ct::CertPolicyCompliance DoesConformToCertPolicy( |
+ X509Certificate* cert, |
+ const SCTList& verified_scts, |
+ const BoundNetLog& net_log) override { |
+ return ct::CertPolicyCompliance::CERT_POLICY_COMPLIES_VIA_SCTS; |
+ } |
+ |
+ ct::EVPolicyCompliance DoesConformToCTEVPolicy( |
+ X509Certificate* cert, |
+ const ct::EVCertsWhitelist* ev_whitelist, |
+ const SCTList& verified_scts, |
+ const BoundNetLog& net_log) override { |
+ return ct::EVPolicyCompliance::EV_POLICY_COMPLIES_VIA_SCTS; |
+ } |
+}; |
+ |
+class IgnoresCTVerifier : public net::CTVerifier { |
+ public: |
+ IgnoresCTVerifier() = default; |
+ ~IgnoresCTVerifier() override = default; |
+ |
+ int Verify(net::X509Certificate* cert, |
+ const std::string& stapled_ocsp_response, |
+ const std::string& sct_list_from_tls_extension, |
+ net::ct::CTVerifyResult* result, |
+ const net::BoundNetLog& net_log) override { |
+ return net::OK; |
+ } |
+ |
+ void SetObserver(Observer* observer) override {} |
+}; |
+ |
SpdyURLRequestContext::SpdyURLRequestContext() : storage_(this) { |
storage_.set_host_resolver( |
std::unique_ptr<HostResolver>(new MockHostResolver)); |
@@ -419,6 +457,8 @@ SpdyURLRequestContext::SpdyURLRequestContext() : storage_(this) { |
params.cert_verifier = cert_verifier(); |
params.transport_security_state = transport_security_state(); |
params.proxy_service = proxy_service(); |
+ params.ct_policy_enforcer = new AllowAnyCertCTPolicyEnforcer(); |
+ params.cert_transparency_verifier = new IgnoresCTVerifier(); |
params.ssl_config_service = ssl_config_service(); |
params.http_auth_handler_factory = http_auth_handler_factory(); |
params.enable_spdy_ping_based_connection_checking = false; |