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 NET_QUIC_QUIC_STREAM_FACTORY_H_ | 5 #ifndef NET_QUIC_QUIC_STREAM_FACTORY_H_ |
6 #define NET_QUIC_QUIC_STREAM_FACTORY_H_ | 6 #define NET_QUIC_QUIC_STREAM_FACTORY_H_ |
7 | 7 |
8 #include <stddef.h> | 8 #include <stddef.h> |
9 #include <stdint.h> | 9 #include <stdint.h> |
10 | 10 |
(...skipping 178 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
189 int max_server_configs_stored_in_properties, | 189 int max_server_configs_stored_in_properties, |
190 bool close_sessions_on_ip_change, | 190 bool close_sessions_on_ip_change, |
191 bool disable_quic_on_timeout_with_open_streams, | 191 bool disable_quic_on_timeout_with_open_streams, |
192 int idle_connection_timeout_seconds, | 192 int idle_connection_timeout_seconds, |
193 int packet_reader_yield_after_duration_milliseconds, | 193 int packet_reader_yield_after_duration_milliseconds, |
194 bool migrate_sessions_on_network_change, | 194 bool migrate_sessions_on_network_change, |
195 bool migrate_sessions_early, | 195 bool migrate_sessions_early, |
196 bool allow_server_migration, | 196 bool allow_server_migration, |
197 bool force_hol_blocking, | 197 bool force_hol_blocking, |
198 bool race_cert_verification, | 198 bool race_cert_verification, |
| 199 bool quic_do_not_fragment, |
199 const QuicTagVector& connection_options, | 200 const QuicTagVector& connection_options, |
200 bool enable_token_binding); | 201 bool enable_token_binding); |
201 ~QuicStreamFactory() override; | 202 ~QuicStreamFactory() override; |
202 | 203 |
203 // Returns true if there is an existing session for |server_id| or if the | 204 // Returns true if there is an existing session for |server_id| or if the |
204 // request can be pooled to an existing session to the IP address of | 205 // request can be pooled to an existing session to the IP address of |
205 // |destination|. | 206 // |destination|. |
206 bool CanUseExistingSession(const QuicServerId& server_id, | 207 bool CanUseExistingSession(const QuicServerId& server_id, |
207 const HostPortPair& destination); | 208 const HostPortPair& destination); |
208 | 209 |
(...skipping 407 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
616 // If set, allows migration of connection to server-specified alternate | 617 // If set, allows migration of connection to server-specified alternate |
617 // server address. | 618 // server address. |
618 const bool allow_server_migration_; | 619 const bool allow_server_migration_; |
619 | 620 |
620 // If set, force HOL blocking. For measurement purposes. | 621 // If set, force HOL blocking. For measurement purposes. |
621 const bool force_hol_blocking_; | 622 const bool force_hol_blocking_; |
622 | 623 |
623 // Set if cert verification is to be raced with host resolution. | 624 // Set if cert verification is to be raced with host resolution. |
624 bool race_cert_verification_; | 625 bool race_cert_verification_; |
625 | 626 |
| 627 // If set, configure QUIC sockets to not fragment packets. |
| 628 bool quic_do_not_fragment_; |
| 629 |
626 // Each profile will (probably) have a unique port_seed_ value. This value | 630 // Each profile will (probably) have a unique port_seed_ value. This value |
627 // is used to help seed a pseudo-random number generator (PortSuggester) so | 631 // is used to help seed a pseudo-random number generator (PortSuggester) so |
628 // that we consistently (within this profile) suggest the same ephemeral | 632 // that we consistently (within this profile) suggest the same ephemeral |
629 // port when we re-connect to any given server/port. The differences between | 633 // port when we re-connect to any given server/port. The differences between |
630 // profiles (probablistically) prevent two profiles from colliding in their | 634 // profiles (probablistically) prevent two profiles from colliding in their |
631 // ephemeral port requests. | 635 // ephemeral port requests. |
632 uint64_t port_seed_; | 636 uint64_t port_seed_; |
633 | 637 |
634 // Local address of socket that was created in CreateSession. | 638 // Local address of socket that was created in CreateSession. |
635 IPEndPoint local_address_; | 639 IPEndPoint local_address_; |
(...skipping 15 matching lines...) Expand all Loading... |
651 const scoped_refptr<SSLConfigService> ssl_config_service_; | 655 const scoped_refptr<SSLConfigService> ssl_config_service_; |
652 | 656 |
653 base::WeakPtrFactory<QuicStreamFactory> weak_factory_; | 657 base::WeakPtrFactory<QuicStreamFactory> weak_factory_; |
654 | 658 |
655 DISALLOW_COPY_AND_ASSIGN(QuicStreamFactory); | 659 DISALLOW_COPY_AND_ASSIGN(QuicStreamFactory); |
656 }; | 660 }; |
657 | 661 |
658 } // namespace net | 662 } // namespace net |
659 | 663 |
660 #endif // NET_QUIC_QUIC_STREAM_FACTORY_H_ | 664 #endif // NET_QUIC_QUIC_STREAM_FACTORY_H_ |
OLD | NEW |