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

Side by Side Diff: net/spdy/chromium/spdy_session_pool.h

Issue 2955673002: Filter QUIC alternative service if the versions advertised by the server (Closed)
Patch Set: address comments #7 Created 3 years, 5 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 | « net/spdy/chromium/spdy_session.cc ('k') | net/spdy/chromium/spdy_session_pool.cc » ('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 (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 NET_SPDY_CHROMIUM_SPDY_SESSION_POOL_H_ 5 #ifndef NET_SPDY_CHROMIUM_SPDY_SESSION_POOL_H_
6 #define NET_SPDY_CHROMIUM_SPDY_SESSION_POOL_H_ 6 #define NET_SPDY_CHROMIUM_SPDY_SESSION_POOL_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 9
10 #include <map> 10 #include <map>
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
51 : public NetworkChangeNotifier::IPAddressObserver, 51 : public NetworkChangeNotifier::IPAddressObserver,
52 public SSLConfigService::Observer, 52 public SSLConfigService::Observer,
53 public CertDatabase::Observer { 53 public CertDatabase::Observer {
54 public: 54 public:
55 typedef base::TimeTicks (*TimeFunc)(void); 55 typedef base::TimeTicks (*TimeFunc)(void);
56 56
57 SpdySessionPool(HostResolver* host_resolver, 57 SpdySessionPool(HostResolver* host_resolver,
58 SSLConfigService* ssl_config_service, 58 SSLConfigService* ssl_config_service,
59 HttpServerProperties* http_server_properties, 59 HttpServerProperties* http_server_properties,
60 TransportSecurityState* transport_security_state, 60 TransportSecurityState* transport_security_state,
61 const QuicVersionVector& quic_supported_versions,
61 bool enable_ping_based_connection_checking, 62 bool enable_ping_based_connection_checking,
62 size_t session_max_recv_window_size, 63 size_t session_max_recv_window_size,
63 const SettingsMap& initial_settings, 64 const SettingsMap& initial_settings,
64 SpdySessionPool::TimeFunc time_func, 65 SpdySessionPool::TimeFunc time_func,
65 ProxyDelegate* proxy_delegate); 66 ProxyDelegate* proxy_delegate);
66 ~SpdySessionPool() override; 67 ~SpdySessionPool() override;
67 68
68 // In the functions below, a session is "available" if this pool has 69 // In the functions below, a session is "available" if this pool has
69 // a reference to it and there is some SpdySessionKey for which 70 // a reference to it and there is some SpdySessionKey for which
70 // FindAvailableSession() will return it. A session is "unavailable" 71 // FindAvailableSession() will return it. A session is "unavailable"
(...skipping 190 matching lines...) Expand 10 before | Expand all | Expand 10 after
261 // A map of all SpdySessions owned by |this| that have an unclaimed pushed 262 // A map of all SpdySessions owned by |this| that have an unclaimed pushed
262 // streams for a GURL. Might contain invalid WeakPtr's. 263 // streams for a GURL. Might contain invalid WeakPtr's.
263 // A single SpdySession can only have at most one pushed stream for each GURL, 264 // A single SpdySession can only have at most one pushed stream for each GURL,
264 // but it is possible that multiple SpdySessions have pushed streams for the 265 // but it is possible that multiple SpdySessions have pushed streams for the
265 // same GURL. 266 // same GURL.
266 UnclaimedPushedStreamMap unclaimed_pushed_streams_; 267 UnclaimedPushedStreamMap unclaimed_pushed_streams_;
267 268
268 const scoped_refptr<SSLConfigService> ssl_config_service_; 269 const scoped_refptr<SSLConfigService> ssl_config_service_;
269 HostResolver* const resolver_; 270 HostResolver* const resolver_;
270 271
272 // Versions of QUIC which may be used.
273 const QuicVersionVector quic_supported_versions_;
274
271 // Defaults to true. May be controlled via SpdySessionPoolPeer for tests. 275 // Defaults to true. May be controlled via SpdySessionPoolPeer for tests.
272 bool enable_sending_initial_data_; 276 bool enable_sending_initial_data_;
273 bool enable_ping_based_connection_checking_; 277 bool enable_ping_based_connection_checking_;
274 278
275 size_t session_max_recv_window_size_; 279 size_t session_max_recv_window_size_;
276 280
277 // Settings that are sent in the initial SETTINGS frame 281 // Settings that are sent in the initial SETTINGS frame
278 // (if |enable_sending_initial_data_| is true), 282 // (if |enable_sending_initial_data_| is true),
279 // and also control SpdySession parameters like initial receive window size 283 // and also control SpdySession parameters like initial receive window size
280 // and maximum HPACK dynamic table size. 284 // and maximum HPACK dynamic table size.
(...skipping 12 matching lines...) Expand all
293 // resources from origins that are different from those of their associated 297 // resources from origins that are different from those of their associated
294 // streams. May be nullptr. 298 // streams. May be nullptr.
295 ProxyDelegate* proxy_delegate_; 299 ProxyDelegate* proxy_delegate_;
296 300
297 DISALLOW_COPY_AND_ASSIGN(SpdySessionPool); 301 DISALLOW_COPY_AND_ASSIGN(SpdySessionPool);
298 }; 302 };
299 303
300 } // namespace net 304 } // namespace net
301 305
302 #endif // NET_SPDY_CHROMIUM_SPDY_SESSION_POOL_H_ 306 #endif // NET_SPDY_CHROMIUM_SPDY_SESSION_POOL_H_
OLDNEW
« no previous file with comments | « net/spdy/chromium/spdy_session.cc ('k') | net/spdy/chromium/spdy_session_pool.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698