OLD | NEW |
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 <string> | 8 #include <string> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
52 class HostMappingRules; | 52 class HostMappingRules; |
53 class HostResolver; | 53 class HostResolver; |
54 class HttpAuthHandlerFactory; | 54 class HttpAuthHandlerFactory; |
55 class HttpServerProperties; | 55 class HttpServerProperties; |
56 class HttpTransactionFactory; | 56 class HttpTransactionFactory; |
57 class HttpUserAgentSettings; | 57 class HttpUserAgentSettings; |
58 class NetworkDelegate; | 58 class NetworkDelegate; |
59 class ProxyConfigService; | 59 class ProxyConfigService; |
60 class ProxyService; | 60 class ProxyService; |
61 class SSLConfigService; | 61 class SSLConfigService; |
| 62 class SSLSocketConfigService; |
62 class TransportSecurityState; | 63 class TransportSecurityState; |
63 class URLRequestContext; | 64 class URLRequestContext; |
64 class URLRequestContextGetter; | 65 class URLRequestContextGetter; |
65 class URLRequestJobFactory; | 66 class URLRequestJobFactory; |
66 class URLRequestThrottlerManager; | 67 class URLRequestThrottlerManager; |
67 class URLSecurityManager; | 68 class URLSecurityManager; |
68 } // namespace net | 69 } // namespace net |
69 | 70 |
70 namespace policy { | 71 namespace policy { |
71 class PolicyService; | 72 class PolicyService; |
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
191 Optional<size_t> quic_max_packet_length; | 192 Optional<size_t> quic_max_packet_length; |
192 net::QuicTagVector quic_connection_options; | 193 net::QuicTagVector quic_connection_options; |
193 Optional<std::string> quic_user_agent_id; | 194 Optional<std::string> quic_user_agent_id; |
194 Optional<net::QuicVersionVector> quic_supported_versions; | 195 Optional<net::QuicVersionVector> quic_supported_versions; |
195 Optional<net::HostPortPair> origin_to_force_quic_on; | 196 Optional<net::HostPortPair> origin_to_force_quic_on; |
196 bool enable_user_alternate_protocol_ports; | 197 bool enable_user_alternate_protocol_ports; |
197 // NetErrorTabHelper uses |dns_probe_service| to send DNS probes when a | 198 // NetErrorTabHelper uses |dns_probe_service| to send DNS probes when a |
198 // main frame load fails with a DNS error in order to provide more useful | 199 // main frame load fails with a DNS error in order to provide more useful |
199 // information to the renderer so it can show a more specific error page. | 200 // information to the renderer so it can show a more specific error page. |
200 scoped_ptr<chrome_browser_net::DnsProbeService> dns_probe_service; | 201 scoped_ptr<chrome_browser_net::DnsProbeService> dns_probe_service; |
| 202 scoped_ptr<net::SSLSocketConfigService> ssl_socket_config_service; |
201 }; | 203 }; |
202 | 204 |
203 // |net_log| must either outlive the IOThread or be NULL. | 205 // |net_log| must either outlive the IOThread or be NULL. |
204 IOThread(PrefService* local_state, | 206 IOThread(PrefService* local_state, |
205 policy::PolicyService* policy_service, | 207 policy::PolicyService* policy_service, |
206 ChromeNetLog* net_log, | 208 ChromeNetLog* net_log, |
207 extensions::EventRouterForwarder* extension_event_router_forwarder); | 209 extensions::EventRouterForwarder* extension_event_router_forwarder); |
208 | 210 |
209 ~IOThread() override; | 211 ~IOThread() override; |
210 | 212 |
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
301 net::SSLConfigService* GetSSLConfigService(); | 303 net::SSLConfigService* GetSSLConfigService(); |
302 | 304 |
303 void ChangedToOnTheRecordOnIOThread(); | 305 void ChangedToOnTheRecordOnIOThread(); |
304 | 306 |
305 void UpdateDnsClientEnabled(); | 307 void UpdateDnsClientEnabled(); |
306 | 308 |
307 // Configures QUIC options based on the flags in |command_line| as | 309 // Configures QUIC options based on the flags in |command_line| as |
308 // well as the QUIC field trial group. | 310 // well as the QUIC field trial group. |
309 void ConfigureQuic(const base::CommandLine& command_line); | 311 void ConfigureQuic(const base::CommandLine& command_line); |
310 | 312 |
| 313 // Configures SSLSocketConfigService based on the flags in |command_line| as |
| 314 // well as the ClientHello field trial group. |
| 315 void ConfigureSSLSocketConfigService(const base::CommandLine& command_line); |
| 316 |
311 extensions::EventRouterForwarder* extension_event_router_forwarder() { | 317 extensions::EventRouterForwarder* extension_event_router_forwarder() { |
312 #if defined(ENABLE_EXTENSIONS) | 318 #if defined(ENABLE_EXTENSIONS) |
313 return extension_event_router_forwarder_; | 319 return extension_event_router_forwarder_; |
314 #else | 320 #else |
315 return NULL; | 321 return NULL; |
316 #endif | 322 #endif |
317 } | 323 } |
318 // Configures QUIC options in |globals| based on the flags in |command_line| | 324 // Configures QUIC options in |globals| based on the flags in |command_line| |
319 // as well as the QUIC field trial group and parameters. | 325 // as well as the QUIC field trial group and parameters. |
320 static void ConfigureQuicGlobals( | 326 static void ConfigureQuicGlobals( |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
389 static net::QuicTagVector GetQuicConnectionOptions( | 395 static net::QuicTagVector GetQuicConnectionOptions( |
390 const base::CommandLine& command_line, | 396 const base::CommandLine& command_line, |
391 const VariationParameters& quic_trial_params); | 397 const VariationParameters& quic_trial_params); |
392 | 398 |
393 // Returns the alternate protocol probability threshold specified by | 399 // Returns the alternate protocol probability threshold specified by |
394 // any flags in |command_line| or |quic_trial_params|. | 400 // any flags in |command_line| or |quic_trial_params|. |
395 static double GetAlternateProtocolProbabilityThreshold( | 401 static double GetAlternateProtocolProbabilityThreshold( |
396 const base::CommandLine& command_line, | 402 const base::CommandLine& command_line, |
397 const VariationParameters& quic_trial_params); | 403 const VariationParameters& quic_trial_params); |
398 | 404 |
| 405 // Configures the SSLSocketConfigService in |globals| based on the flags in |
| 406 // |command_line| as well as the ClientHello field trial group. |
| 407 static void ConfigureSSLSocketConfigServiceGlobals( |
| 408 const base::CommandLine& command_line, |
| 409 base::StringPiece client_hello_trial_group, |
| 410 Globals* globals); |
| 411 |
399 // The NetLog is owned by the browser process, to allow logging from other | 412 // The NetLog is owned by the browser process, to allow logging from other |
400 // threads during shutdown, but is used most frequently on the IOThread. | 413 // threads during shutdown, but is used most frequently on the IOThread. |
401 ChromeNetLog* net_log_; | 414 ChromeNetLog* net_log_; |
402 | 415 |
403 #if defined(ENABLE_EXTENSIONS) | 416 #if defined(ENABLE_EXTENSIONS) |
404 // The extensions::EventRouterForwarder allows for sending events to | 417 // The extensions::EventRouterForwarder allows for sending events to |
405 // extensions from the IOThread. | 418 // extensions from the IOThread. |
406 extensions::EventRouterForwarder* extension_event_router_forwarder_; | 419 extensions::EventRouterForwarder* extension_event_router_forwarder_; |
407 #endif | 420 #endif |
408 | 421 |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
451 bool is_spdy_disabled_by_policy_; | 464 bool is_spdy_disabled_by_policy_; |
452 | 465 |
453 const base::TimeTicks creation_time_; | 466 const base::TimeTicks creation_time_; |
454 | 467 |
455 base::WeakPtrFactory<IOThread> weak_factory_; | 468 base::WeakPtrFactory<IOThread> weak_factory_; |
456 | 469 |
457 DISALLOW_COPY_AND_ASSIGN(IOThread); | 470 DISALLOW_COPY_AND_ASSIGN(IOThread); |
458 }; | 471 }; |
459 | 472 |
460 #endif // CHROME_BROWSER_IO_THREAD_H_ | 473 #endif // CHROME_BROWSER_IO_THREAD_H_ |
OLD | NEW |