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

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

Issue 1414313002: Allow dynamic updating of authentication policies (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 2 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 | « no previous file | chrome/browser/io_thread.cc » ('j') | chrome/browser/io_thread.cc » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 #ifndef CHROME_BROWSER_IO_THREAD_H_ 5 #ifndef CHROME_BROWSER_IO_THREAD_H_
6 #define CHROME_BROWSER_IO_THREAD_H_ 6 #define CHROME_BROWSER_IO_THREAD_H_
7 7
8 #include <map> 8 #include <map>
9 #include <set> 9 #include <set>
10 #include <string> 10 #include <string>
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
46 46
47 namespace net { 47 namespace net {
48 class CertPolicyEnforcer; 48 class CertPolicyEnforcer;
49 class CertVerifier; 49 class CertVerifier;
50 class ChannelIDService; 50 class ChannelIDService;
51 class CookieStore; 51 class CookieStore;
52 class CTVerifier; 52 class CTVerifier;
53 class FtpTransactionFactory; 53 class FtpTransactionFactory;
54 class HostMappingRules; 54 class HostMappingRules;
55 class HostResolver; 55 class HostResolver;
56 class HttpAuthHandlerFactory; 56 class HttpAuthHandlerRegistryFactory;
57 class HttpNetworkSession; 57 class HttpNetworkSession;
58 class HttpServerProperties; 58 class HttpServerProperties;
59 class HttpTransactionFactory; 59 class HttpTransactionFactory;
60 class HttpUserAgentSettings; 60 class HttpUserAgentSettings;
61 class NetworkDelegate; 61 class NetworkDelegate;
62 class NetworkQualityEstimator; 62 class NetworkQualityEstimator;
63 class ProxyConfigService; 63 class ProxyConfigService;
64 class ProxyService; 64 class ProxyService;
65 class SSLConfigService; 65 class SSLConfigService;
66 class TransportSecurityState; 66 class TransportSecurityState;
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
130 scoped_ptr<net::CertVerifier> cert_verifier; 130 scoped_ptr<net::CertVerifier> cert_verifier;
131 // The ChannelIDService must outlive the HttpTransactionFactory. 131 // The ChannelIDService must outlive the HttpTransactionFactory.
132 scoped_ptr<net::ChannelIDService> system_channel_id_service; 132 scoped_ptr<net::ChannelIDService> system_channel_id_service;
133 // This TransportSecurityState doesn't load or save any state. It's only 133 // This TransportSecurityState doesn't load or save any state. It's only
134 // used to enforce pinning for system requests and will only use built-in 134 // used to enforce pinning for system requests and will only use built-in
135 // pins. 135 // pins.
136 scoped_ptr<net::TransportSecurityState> transport_security_state; 136 scoped_ptr<net::TransportSecurityState> transport_security_state;
137 scoped_ptr<net::CTVerifier> cert_transparency_verifier; 137 scoped_ptr<net::CTVerifier> cert_transparency_verifier;
138 scoped_ptr<net::CertPolicyEnforcer> cert_policy_enforcer; 138 scoped_ptr<net::CertPolicyEnforcer> cert_policy_enforcer;
139 scoped_refptr<net::SSLConfigService> ssl_config_service; 139 scoped_refptr<net::SSLConfigService> ssl_config_service;
140 scoped_ptr<net::HttpAuthHandlerFactory> http_auth_handler_factory; 140 scoped_ptr<net::HttpAuthHandlerRegistryFactory> http_auth_handler_factory;
141 scoped_ptr<net::HttpServerProperties> http_server_properties; 141 scoped_ptr<net::HttpServerProperties> http_server_properties;
142 scoped_ptr<net::ProxyService> proxy_script_fetcher_proxy_service; 142 scoped_ptr<net::ProxyService> proxy_script_fetcher_proxy_service;
143 scoped_ptr<net::HttpNetworkSession> 143 scoped_ptr<net::HttpNetworkSession>
144 proxy_script_fetcher_http_network_session; 144 proxy_script_fetcher_http_network_session;
145 scoped_ptr<net::HttpTransactionFactory> 145 scoped_ptr<net::HttpTransactionFactory>
146 proxy_script_fetcher_http_transaction_factory; 146 proxy_script_fetcher_http_transaction_factory;
147 scoped_ptr<net::FtpTransactionFactory> 147 scoped_ptr<net::FtpTransactionFactory>
148 proxy_script_fetcher_ftp_transaction_factory; 148 proxy_script_fetcher_ftp_transaction_factory;
149 scoped_ptr<net::URLRequestJobFactory> 149 scoped_ptr<net::URLRequestJobFactory>
150 proxy_script_fetcher_url_request_job_factory; 150 proxy_script_fetcher_url_request_job_factory;
(...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after
293 // Global state must be initialized on the IO thread, then this 293 // Global state must be initialized on the IO thread, then this
294 // method must be invoked on the UI thread. 294 // method must be invoked on the UI thread.
295 void InitSystemRequestContext(); 295 void InitSystemRequestContext();
296 296
297 // Lazy initialization of system request context for 297 // Lazy initialization of system request context for
298 // SystemURLRequestContextGetter. To be called on IO thread only 298 // SystemURLRequestContextGetter. To be called on IO thread only
299 // after global state has been initialized on the IO thread, and 299 // after global state has been initialized on the IO thread, and
300 // SystemRequestContext state has been initialized on the UI thread. 300 // SystemRequestContext state has been initialized on the UI thread.
301 void InitSystemRequestContextOnIOThread(); 301 void InitSystemRequestContextOnIOThread();
302 302
303 net::HttpAuthHandlerFactory* CreateDefaultAuthHandlerFactory( 303 void CreateDefaultAuthHandlerFactory();
304 net::HostResolver* resolver);
305 304
306 // Returns an SSLConfigService instance. 305 // Returns an SSLConfigService instance.
307 net::SSLConfigService* GetSSLConfigService(); 306 net::SSLConfigService* GetSSLConfigService();
308 307
309 void ChangedToOnTheRecordOnIOThread(); 308 void ChangedToOnTheRecordOnIOThread();
310 309
311 void UpdateDnsClientEnabled(); 310 void UpdateDnsClientEnabled();
311 void UpdateSecurityManager();
312 void UpdateAndroidAuthNegotiateAccount();
313 void UpdateNegotiateDisableCnameLookup();
314 void UpdateNegotiateEnablePort();
312 315
313 // Configures QUIC options based on the flags in |command_line| as 316 // Configures QUIC options based on the flags in |command_line| as
314 // well as the QUIC field trial group. 317 // well as the QUIC field trial group.
315 void ConfigureQuic(const base::CommandLine& command_line); 318 void ConfigureQuic(const base::CommandLine& command_line);
316 319
317 extensions::EventRouterForwarder* extension_event_router_forwarder() { 320 extensions::EventRouterForwarder* extension_event_router_forwarder() {
318 #if defined(ENABLE_EXTENSIONS) 321 #if defined(ENABLE_EXTENSIONS)
319 return extension_event_router_forwarder_; 322 return extension_event_router_forwarder_;
320 #else 323 #else
321 return NULL; 324 return NULL;
(...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after
479 class LoggingNetworkChangeObserver; 482 class LoggingNetworkChangeObserver;
480 scoped_ptr<LoggingNetworkChangeObserver> network_change_observer_; 483 scoped_ptr<LoggingNetworkChangeObserver> network_change_observer_;
481 484
482 BooleanPrefMember system_enable_referrers_; 485 BooleanPrefMember system_enable_referrers_;
483 486
484 BooleanPrefMember dns_client_enabled_; 487 BooleanPrefMember dns_client_enabled_;
485 488
486 BooleanPrefMember quick_check_enabled_; 489 BooleanPrefMember quick_check_enabled_;
487 490
488 // Store HTTP Auth-related policies in this thread. 491 // Store HTTP Auth-related policies in this thread.
492 // TODO(aberent) Make the list of auth schemes a PrefMember, so that the
493 // policy can change after startup.
489 std::string auth_schemes_; 494 std::string auth_schemes_;
490 bool negotiate_disable_cname_lookup_; 495 BooleanPrefMember negotiate_disable_cname_lookup_;
491 bool negotiate_enable_port_; 496 BooleanPrefMember negotiate_enable_port_;
492 std::string auth_server_whitelist_; 497 StringPrefMember auth_server_whitelist_;
493 std::string auth_delegate_whitelist_; 498 StringPrefMember auth_delegate_whitelist_;
499 // No PrefMember for the GSSAPI library name, since changing it after startup
Bernhard Bauer 2015/10/21 09:51:10 Add an empty line before the comment please.
aberent 2015/10/22 17:57:03 Done.
500 // requires unloading the existing GSSAPI library, which could cause all sorts
501 // of problems for active Negotiate transactions.
Bernhard Bauer 2015/10/21 09:51:10 Nit: s/ for active Negotiate transactions// -- the
aberent 2015/10/22 17:57:03 Changed to "for, for example, active Negotiate tra
494 std::string gssapi_library_name_; 502 std::string gssapi_library_name_;
495 std::string auth_android_negotiate_account_type_; 503 StringPrefMember auth_android_negotiate_account_type_;
496 504
497 // This is an instance of the default SSLConfigServiceManager for the current 505 // This is an instance of the default SSLConfigServiceManager for the current
498 // platform and it gets SSL preferences from local_state object. 506 // platform and it gets SSL preferences from local_state object.
499 scoped_ptr<SSLConfigServiceManager> ssl_config_service_manager_; 507 scoped_ptr<SSLConfigServiceManager> ssl_config_service_manager_;
500 508
501 // These member variables are initialized by a task posted to the IO thread, 509 // These member variables are initialized by a task posted to the IO thread,
502 // which gets posted by calling certain member functions of IOThread. 510 // which gets posted by calling certain member functions of IOThread.
503 scoped_ptr<net::ProxyConfigService> system_proxy_config_service_; 511 scoped_ptr<net::ProxyConfigService> system_proxy_config_service_;
504 512
505 scoped_ptr<PrefProxyConfigTracker> pref_proxy_config_tracker_; 513 scoped_ptr<PrefProxyConfigTracker> pref_proxy_config_tracker_;
(...skipping 15 matching lines...) Expand all
521 external_data_use_observer_; 529 external_data_use_observer_;
522 530
523 const base::TimeTicks creation_time_; 531 const base::TimeTicks creation_time_;
524 532
525 base::WeakPtrFactory<IOThread> weak_factory_; 533 base::WeakPtrFactory<IOThread> weak_factory_;
526 534
527 DISALLOW_COPY_AND_ASSIGN(IOThread); 535 DISALLOW_COPY_AND_ASSIGN(IOThread);
528 }; 536 };
529 537
530 #endif // CHROME_BROWSER_IO_THREAD_H_ 538 #endif // CHROME_BROWSER_IO_THREAD_H_
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/io_thread.cc » ('j') | chrome/browser/io_thread.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698