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 #include "net/http/http_network_session.h" | 5 #include "net/http/http_network_session.h" |
6 | 6 |
7 #include <utility> | 7 #include <utility> |
8 | 8 |
9 #include "base/atomic_sequence_num.h" | 9 #include "base/atomic_sequence_num.h" |
10 #include "base/compiler_specific.h" | 10 #include "base/compiler_specific.h" |
(...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
123 QuicCryptoClientStreamFactory::GetDefaultFactory()), | 123 QuicCryptoClientStreamFactory::GetDefaultFactory()), |
124 quic_max_recent_disabled_reasons(kQuicMaxRecentDisabledReasons), | 124 quic_max_recent_disabled_reasons(kQuicMaxRecentDisabledReasons), |
125 quic_threshold_public_resets_post_handshake(0), | 125 quic_threshold_public_resets_post_handshake(0), |
126 quic_threshold_timeouts_streams_open(0), | 126 quic_threshold_timeouts_streams_open(0), |
127 quic_close_sessions_on_ip_change(false), | 127 quic_close_sessions_on_ip_change(false), |
128 quic_idle_connection_timeout_seconds(kIdleConnectionTimeoutSeconds), | 128 quic_idle_connection_timeout_seconds(kIdleConnectionTimeoutSeconds), |
129 quic_disable_preconnect_if_0rtt(false), | 129 quic_disable_preconnect_if_0rtt(false), |
130 quic_migrate_sessions_on_network_change(false), | 130 quic_migrate_sessions_on_network_change(false), |
131 quic_migrate_sessions_early(false), | 131 quic_migrate_sessions_early(false), |
132 quic_disable_bidirectional_streams(false), | 132 quic_disable_bidirectional_streams(false), |
| 133 quic_race_cert_verification(false), |
133 proxy_delegate(NULL), | 134 proxy_delegate(NULL), |
134 enable_token_binding(false) { | 135 enable_token_binding(false) { |
135 quic_supported_versions.push_back(QUIC_VERSION_34); | 136 quic_supported_versions.push_back(QUIC_VERSION_34); |
136 } | 137 } |
137 | 138 |
138 HttpNetworkSession::Params::Params(const Params& other) = default; | 139 HttpNetworkSession::Params::Params(const Params& other) = default; |
139 | 140 |
140 HttpNetworkSession::Params::~Params() {} | 141 HttpNetworkSession::Params::~Params() {} |
141 | 142 |
142 // TODO(mbelshe): Move the socket factories into HttpStreamFactory. | 143 // TODO(mbelshe): Move the socket factories into HttpStreamFactory. |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
180 params.quic_threshold_public_resets_post_handshake, | 181 params.quic_threshold_public_resets_post_handshake, |
181 params.quic_threshold_timeouts_streams_open, | 182 params.quic_threshold_timeouts_streams_open, |
182 params.quic_socket_receive_buffer_size, | 183 params.quic_socket_receive_buffer_size, |
183 params.quic_delay_tcp_race, | 184 params.quic_delay_tcp_race, |
184 params.quic_max_server_configs_stored_in_properties, | 185 params.quic_max_server_configs_stored_in_properties, |
185 params.quic_close_sessions_on_ip_change, | 186 params.quic_close_sessions_on_ip_change, |
186 params.disable_quic_on_timeout_with_open_streams, | 187 params.disable_quic_on_timeout_with_open_streams, |
187 params.quic_idle_connection_timeout_seconds, | 188 params.quic_idle_connection_timeout_seconds, |
188 params.quic_migrate_sessions_on_network_change, | 189 params.quic_migrate_sessions_on_network_change, |
189 params.quic_migrate_sessions_early, | 190 params.quic_migrate_sessions_early, |
| 191 params.quic_race_cert_verification, |
190 params.quic_connection_options, | 192 params.quic_connection_options, |
191 params.enable_token_binding), | 193 params.enable_token_binding), |
192 spdy_session_pool_(params.host_resolver, | 194 spdy_session_pool_(params.host_resolver, |
193 params.ssl_config_service, | 195 params.ssl_config_service, |
194 params.http_server_properties, | 196 params.http_server_properties, |
195 params.transport_security_state, | 197 params.transport_security_state, |
196 params.enable_spdy_ping_based_connection_checking, | 198 params.enable_spdy_ping_based_connection_checking, |
197 params.enable_priority_dependencies, | 199 params.enable_priority_dependencies, |
198 params.spdy_default_protocol, | 200 params.spdy_default_protocol, |
199 params.spdy_session_max_recv_window_size, | 201 params.spdy_session_max_recv_window_size, |
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
338 dict->SetInteger("max_server_configs_stored_in_properties", | 340 dict->SetInteger("max_server_configs_stored_in_properties", |
339 params_.quic_max_server_configs_stored_in_properties); | 341 params_.quic_max_server_configs_stored_in_properties); |
340 dict->SetInteger("idle_connection_timeout_seconds", | 342 dict->SetInteger("idle_connection_timeout_seconds", |
341 params_.quic_idle_connection_timeout_seconds); | 343 params_.quic_idle_connection_timeout_seconds); |
342 dict->SetBoolean("disable_preconnect_if_0rtt", | 344 dict->SetBoolean("disable_preconnect_if_0rtt", |
343 params_.quic_disable_preconnect_if_0rtt); | 345 params_.quic_disable_preconnect_if_0rtt); |
344 dict->SetBoolean("disable_quic_on_timeout_with_open_streams", | 346 dict->SetBoolean("disable_quic_on_timeout_with_open_streams", |
345 params_.disable_quic_on_timeout_with_open_streams); | 347 params_.disable_quic_on_timeout_with_open_streams); |
346 dict->SetString("disabled_reason", | 348 dict->SetString("disabled_reason", |
347 quic_stream_factory_.QuicDisabledReasonString()); | 349 quic_stream_factory_.QuicDisabledReasonString()); |
| 350 dict->SetBoolean("race_cert_verification", |
| 351 params_.quic_race_cert_verification); |
348 return std::move(dict); | 352 return std::move(dict); |
349 } | 353 } |
350 | 354 |
351 void HttpNetworkSession::CloseAllConnections() { | 355 void HttpNetworkSession::CloseAllConnections() { |
352 normal_socket_pool_manager_->FlushSocketPoolsWithError(ERR_ABORTED); | 356 normal_socket_pool_manager_->FlushSocketPoolsWithError(ERR_ABORTED); |
353 websocket_socket_pool_manager_->FlushSocketPoolsWithError(ERR_ABORTED); | 357 websocket_socket_pool_manager_->FlushSocketPoolsWithError(ERR_ABORTED); |
354 spdy_session_pool_.CloseCurrentSessions(ERR_ABORTED); | 358 spdy_session_pool_.CloseCurrentSessions(ERR_ABORTED); |
355 quic_stream_factory_.CloseAllSessions(ERR_ABORTED, QUIC_INTERNAL_ERROR); | 359 quic_stream_factory_.CloseAllSessions(ERR_ABORTED, QUIC_INTERNAL_ERROR); |
356 } | 360 } |
357 | 361 |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
405 case WEBSOCKET_SOCKET_POOL: | 409 case WEBSOCKET_SOCKET_POOL: |
406 return websocket_socket_pool_manager_.get(); | 410 return websocket_socket_pool_manager_.get(); |
407 default: | 411 default: |
408 NOTREACHED(); | 412 NOTREACHED(); |
409 break; | 413 break; |
410 } | 414 } |
411 return NULL; | 415 return NULL; |
412 } | 416 } |
413 | 417 |
414 } // namespace net | 418 } // namespace net |
OLD | NEW |