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

Side by Side Diff: chrome/browser/io_thread.cc

Issue 782333002: Certificate Transparency: Adding finch and NetLog logging for EV certs (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressing review comments Created 6 years 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "chrome/browser/io_thread.h" 5 #include "chrome/browser/io_thread.h"
6 6
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/base64.h" 9 #include "base/base64.h"
10 #include "base/bind.h" 10 #include "base/bind.h"
(...skipping 306 matching lines...) Expand 10 before | Expand all | Expand 10 after
317 317
318 // Return true if stale-while-revalidate support should be enabled. 318 // Return true if stale-while-revalidate support should be enabled.
319 bool IsStaleWhileRevalidateEnabled(const base::CommandLine& command_line) { 319 bool IsStaleWhileRevalidateEnabled(const base::CommandLine& command_line) {
320 if (command_line.HasSwitch(switches::kEnableStaleWhileRevalidate)) 320 if (command_line.HasSwitch(switches::kEnableStaleWhileRevalidate))
321 return true; 321 return true;
322 const std::string group_name = 322 const std::string group_name =
323 base::FieldTrialList::FindFullName(kStaleWhileRevalidateFieldTrialName); 323 base::FieldTrialList::FindFullName(kStaleWhileRevalidateFieldTrialName);
324 return group_name == "Enabled"; 324 return group_name == "Enabled";
325 } 325 }
326 326
327 bool IsCertificateTransparencyRequiredForEV(
328 const base::CommandLine& command_line) {
329 const std::string group_name =
330 base::FieldTrialList::FindFullName("CTRequiredForEVTrial");
331
332 if (command_line.HasSwitch(switches::kRequireCTForEV))
333 return true;
334
335 return group_name == "RequirementEnforced";
336 }
337
327 } // namespace 338 } // namespace
328 339
329 class IOThread::LoggingNetworkChangeObserver 340 class IOThread::LoggingNetworkChangeObserver
330 : public net::NetworkChangeNotifier::IPAddressObserver, 341 : public net::NetworkChangeNotifier::IPAddressObserver,
331 public net::NetworkChangeNotifier::ConnectionTypeObserver, 342 public net::NetworkChangeNotifier::ConnectionTypeObserver,
332 public net::NetworkChangeNotifier::NetworkChangeObserver { 343 public net::NetworkChangeNotifier::NetworkChangeObserver {
333 public: 344 public:
334 // |net_log| must remain valid throughout our lifetime. 345 // |net_log| must remain valid throughout our lifetime.
335 explicit LoggingNetworkChangeObserver(net::NetLog* net_log) 346 explicit LoggingNetworkChangeObserver(net::NetLog* net_log)
336 : net_log_(net_log) { 347 : net_log_(net_log) {
(...skipping 312 matching lines...) Expand 10 before | Expand all | Expand 10 after
649 << "Unable to decode CT public key."; 660 << "Unable to decode CT public key.";
650 scoped_ptr<net::CTLogVerifier> external_log_verifier( 661 scoped_ptr<net::CTLogVerifier> external_log_verifier(
651 net::CTLogVerifier::Create(ct_public_key_data, log_description)); 662 net::CTLogVerifier::Create(ct_public_key_data, log_description));
652 CHECK(external_log_verifier) << "Unable to parse CT public key."; 663 CHECK(external_log_verifier) << "Unable to parse CT public key.";
653 VLOG(1) << "Adding log with description " << log_description; 664 VLOG(1) << "Adding log with description " << log_description;
654 ct_verifier->AddLog(external_log_verifier.Pass()); 665 ct_verifier->AddLog(external_log_verifier.Pass());
655 } 666 }
656 } 667 }
657 668
658 net::CertPolicyEnforcer* policy_enforcer = NULL; 669 net::CertPolicyEnforcer* policy_enforcer = NULL;
659 // TODO(eranm): Control with Finch, crbug.com/437766 670 policy_enforcer = new net::CertPolicyEnforcer(
660 if (command_line.HasSwitch(switches::kRequireCTForEV)) { 671 IsCertificateTransparencyRequiredForEV(command_line));
661 policy_enforcer = new net::CertPolicyEnforcer(true);
662 } else {
663 policy_enforcer = new net::CertPolicyEnforcer(false);
664 }
665 globals_->cert_policy_enforcer.reset(policy_enforcer); 672 globals_->cert_policy_enforcer.reset(policy_enforcer);
666 673
667 globals_->ssl_config_service = GetSSLConfigService(); 674 globals_->ssl_config_service = GetSSLConfigService();
668 675
669 globals_->http_auth_handler_factory.reset(CreateDefaultAuthHandlerFactory( 676 globals_->http_auth_handler_factory.reset(CreateDefaultAuthHandlerFactory(
670 globals_->host_resolver.get())); 677 globals_->host_resolver.get()));
671 globals_->http_server_properties.reset(new net::HttpServerPropertiesImpl()); 678 globals_->http_server_properties.reset(new net::HttpServerPropertiesImpl());
672 // For the ProxyScriptFetcher, we use a direct ProxyService. 679 // For the ProxyScriptFetcher, we use a direct ProxyService.
673 globals_->proxy_script_fetcher_proxy_service.reset( 680 globals_->proxy_script_fetcher_proxy_service.reset(
674 net::ProxyService::CreateDirectWithNetLog(net_log_)); 681 net::ProxyService::CreateDirectWithNetLog(net_log_));
(...skipping 732 matching lines...) Expand 10 before | Expand all | Expand 10 after
1407 net::QuicVersionVector supported_versions = net::QuicSupportedVersions(); 1414 net::QuicVersionVector supported_versions = net::QuicSupportedVersions();
1408 for (size_t i = 0; i < supported_versions.size(); ++i) { 1415 for (size_t i = 0; i < supported_versions.size(); ++i) {
1409 net::QuicVersion version = supported_versions[i]; 1416 net::QuicVersion version = supported_versions[i];
1410 if (net::QuicVersionToString(version) == quic_version) { 1417 if (net::QuicVersionToString(version) == quic_version) {
1411 return version; 1418 return version;
1412 } 1419 }
1413 } 1420 }
1414 1421
1415 return net::QUIC_VERSION_UNSUPPORTED; 1422 return net::QUIC_VERSION_UNSUPPORTED;
1416 } 1423 }
OLDNEW
« no previous file with comments | « chrome/browser/component_updater/ev_whitelist_component_installer.cc ('k') | chrome/browser/net/packed_ct_ev_whitelist.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698