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

Side by Side Diff: google_apis/gcm/tools/mcs_probe.cc

Issue 2067843003: Require a CTVerifier and CTPolicyEnforcer for TLS/QUIC sockets (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixup Created 4 years, 6 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
« no previous file with comments | « extensions/browser/api/sockets_tcp/sockets_tcp_api.cc ('k') | ios/crnet/crnet_environment.mm » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 // A standalone tool for testing MCS connections and the MCS client on their 5 // A standalone tool for testing MCS connections and the MCS client on their
6 // own. 6 // own.
7 7
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include <cstddef> 10 #include <cstddef>
(...skipping 23 matching lines...) Expand all
34 #include "google_apis/gcm/base/mcs_message.h" 34 #include "google_apis/gcm/base/mcs_message.h"
35 #include "google_apis/gcm/base/mcs_util.h" 35 #include "google_apis/gcm/base/mcs_util.h"
36 #include "google_apis/gcm/engine/checkin_request.h" 36 #include "google_apis/gcm/engine/checkin_request.h"
37 #include "google_apis/gcm/engine/connection_factory_impl.h" 37 #include "google_apis/gcm/engine/connection_factory_impl.h"
38 #include "google_apis/gcm/engine/gcm_store_impl.h" 38 #include "google_apis/gcm/engine/gcm_store_impl.h"
39 #include "google_apis/gcm/engine/gservices_settings.h" 39 #include "google_apis/gcm/engine/gservices_settings.h"
40 #include "google_apis/gcm/engine/mcs_client.h" 40 #include "google_apis/gcm/engine/mcs_client.h"
41 #include "google_apis/gcm/monitoring/fake_gcm_stats_recorder.h" 41 #include "google_apis/gcm/monitoring/fake_gcm_stats_recorder.h"
42 #include "net/base/host_mapping_rules.h" 42 #include "net/base/host_mapping_rules.h"
43 #include "net/cert/cert_verifier.h" 43 #include "net/cert/cert_verifier.h"
44 #include "net/cert/ct_policy_enforcer.h"
45 #include "net/cert/multi_log_ct_verifier.h"
44 #include "net/dns/host_resolver.h" 46 #include "net/dns/host_resolver.h"
45 #include "net/http/http_auth_handler_factory.h" 47 #include "net/http/http_auth_handler_factory.h"
46 #include "net/http/http_auth_preferences.h" 48 #include "net/http/http_auth_preferences.h"
47 #include "net/http/http_auth_scheme.h" 49 #include "net/http/http_auth_scheme.h"
48 #include "net/http/http_network_session.h" 50 #include "net/http/http_network_session.h"
49 #include "net/http/http_server_properties_impl.h" 51 #include "net/http/http_server_properties_impl.h"
50 #include "net/http/transport_security_state.h" 52 #include "net/http/transport_security_state.h"
51 #include "net/log/write_to_file_net_log_observer.h" 53 #include "net/log/write_to_file_net_log_observer.h"
52 #include "net/socket/client_socket_factory.h" 54 #include "net/socket/client_socket_factory.h"
53 #include "net/socket/ssl_client_socket.h" 55 #include "net/socket/ssl_client_socket.h"
(...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after
243 int server_port_; 245 int server_port_;
244 246
245 // Network state. 247 // Network state.
246 scoped_refptr<net::URLRequestContextGetter> url_request_context_getter_; 248 scoped_refptr<net::URLRequestContextGetter> url_request_context_getter_;
247 net::NetLog net_log_; 249 net::NetLog net_log_;
248 std::unique_ptr<net::WriteToFileNetLogObserver> logger_; 250 std::unique_ptr<net::WriteToFileNetLogObserver> logger_;
249 std::unique_ptr<net::HostResolver> host_resolver_; 251 std::unique_ptr<net::HostResolver> host_resolver_;
250 std::unique_ptr<net::CertVerifier> cert_verifier_; 252 std::unique_ptr<net::CertVerifier> cert_verifier_;
251 std::unique_ptr<net::ChannelIDService> system_channel_id_service_; 253 std::unique_ptr<net::ChannelIDService> system_channel_id_service_;
252 std::unique_ptr<net::TransportSecurityState> transport_security_state_; 254 std::unique_ptr<net::TransportSecurityState> transport_security_state_;
255 std::unique_ptr<net::CTVerifier> cert_transparency_verifier_;
256 std::unique_ptr<net::CTPolicyEnforcer> ct_policy_enforcer_;
253 MCSProbeAuthPreferences http_auth_preferences_; 257 MCSProbeAuthPreferences http_auth_preferences_;
254 std::unique_ptr<net::HttpAuthHandlerFactory> http_auth_handler_factory_; 258 std::unique_ptr<net::HttpAuthHandlerFactory> http_auth_handler_factory_;
255 std::unique_ptr<net::HttpServerPropertiesImpl> http_server_properties_; 259 std::unique_ptr<net::HttpServerPropertiesImpl> http_server_properties_;
256 std::unique_ptr<net::HostMappingRules> host_mapping_rules_; 260 std::unique_ptr<net::HostMappingRules> host_mapping_rules_;
257 std::unique_ptr<net::HttpNetworkSession> network_session_; 261 std::unique_ptr<net::HttpNetworkSession> network_session_;
258 std::unique_ptr<net::ProxyService> proxy_service_; 262 std::unique_ptr<net::ProxyService> proxy_service_;
259 263
260 FakeGCMStatsRecorder recorder_; 264 FakeGCMStatsRecorder recorder_;
261 std::unique_ptr<GCMStore> gcm_store_; 265 std::unique_ptr<GCMStore> gcm_store_;
262 std::unique_ptr<MCSClient> mcs_client_; 266 std::unique_ptr<MCSClient> mcs_client_;
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after
392 cert_verifier_.reset(new MyTestCertVerifier()); 396 cert_verifier_.reset(new MyTestCertVerifier());
393 } else { 397 } else {
394 cert_verifier_ = net::CertVerifier::CreateDefault(); 398 cert_verifier_ = net::CertVerifier::CreateDefault();
395 } 399 }
396 system_channel_id_service_.reset( 400 system_channel_id_service_.reset(
397 new net::ChannelIDService( 401 new net::ChannelIDService(
398 new net::DefaultChannelIDStore(NULL), 402 new net::DefaultChannelIDStore(NULL),
399 base::WorkerPool::GetTaskRunner(true))); 403 base::WorkerPool::GetTaskRunner(true)));
400 404
401 transport_security_state_.reset(new net::TransportSecurityState()); 405 transport_security_state_.reset(new net::TransportSecurityState());
406 cert_transparency_verifier_.reset(new net::MultiLogCTVerifier());
407 ct_policy_enforcer_.reset(new net::CTPolicyEnforcer());
402 http_auth_handler_factory_ = net::HttpAuthHandlerRegistryFactory::Create( 408 http_auth_handler_factory_ = net::HttpAuthHandlerRegistryFactory::Create(
403 &http_auth_preferences_, host_resolver_.get()); 409 &http_auth_preferences_, host_resolver_.get());
404 http_server_properties_.reset(new net::HttpServerPropertiesImpl()); 410 http_server_properties_.reset(new net::HttpServerPropertiesImpl());
405 host_mapping_rules_.reset(new net::HostMappingRules()); 411 host_mapping_rules_.reset(new net::HostMappingRules());
406 proxy_service_ = net::ProxyService::CreateDirectWithNetLog(&net_log_); 412 proxy_service_ = net::ProxyService::CreateDirectWithNetLog(&net_log_);
407 } 413 }
408 414
409 void MCSProbe::BuildNetworkSession() { 415 void MCSProbe::BuildNetworkSession() {
410 net::HttpNetworkSession::Params session_params; 416 net::HttpNetworkSession::Params session_params;
411 session_params.host_resolver = host_resolver_.get(); 417 session_params.host_resolver = host_resolver_.get();
412 session_params.cert_verifier = cert_verifier_.get(); 418 session_params.cert_verifier = cert_verifier_.get();
413 session_params.channel_id_service = system_channel_id_service_.get(); 419 session_params.channel_id_service = system_channel_id_service_.get();
414 session_params.transport_security_state = transport_security_state_.get(); 420 session_params.transport_security_state = transport_security_state_.get();
421 session_params.cert_transparency_verifier = cert_transparency_verifier_.get();
422 session_params.ct_policy_enforcer = ct_policy_enforcer_.get();
415 session_params.ssl_config_service = new net::SSLConfigServiceDefaults(); 423 session_params.ssl_config_service = new net::SSLConfigServiceDefaults();
416 session_params.http_auth_handler_factory = http_auth_handler_factory_.get(); 424 session_params.http_auth_handler_factory = http_auth_handler_factory_.get();
417 session_params.http_server_properties = http_server_properties_.get(); 425 session_params.http_server_properties = http_server_properties_.get();
418 session_params.host_mapping_rules = host_mapping_rules_.get(); 426 session_params.host_mapping_rules = host_mapping_rules_.get();
419 session_params.ignore_certificate_errors = true; 427 session_params.ignore_certificate_errors = true;
420 session_params.testing_fixed_http_port = 0; 428 session_params.testing_fixed_http_port = 0;
421 session_params.testing_fixed_https_port = 0; 429 session_params.testing_fixed_https_port = 0;
422 session_params.net_log = &net_log_; 430 session_params.net_log = &net_log_;
423 session_params.proxy_service = proxy_service_.get(); 431 session_params.proxy_service = proxy_service_.get();
424 432
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after
508 516
509 return 0; 517 return 0;
510 } 518 }
511 519
512 } // namespace 520 } // namespace
513 } // namespace gcm 521 } // namespace gcm
514 522
515 int main(int argc, char* argv[]) { 523 int main(int argc, char* argv[]) {
516 return gcm::MCSProbeMain(argc, argv); 524 return gcm::MCSProbeMain(argc, argv);
517 } 525 }
OLDNEW
« no previous file with comments | « extensions/browser/api/sockets_tcp/sockets_tcp_api.cc ('k') | ios/crnet/crnet_environment.mm » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698