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

Side by Side Diff: net/quic/quic_config.cc

Issue 1572033003: relnote: Allowing multipath support negotiation. Protected by --quic_enable_multipath, default valu… (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@0044_CL_111708360
Patch Set: rebase after removing 111628983 Created 4 years, 11 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/quic/quic_config.h ('k') | net/quic/quic_connection.h » ('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) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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/quic/quic_config.h" 5 #include "net/quic/quic_config.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "net/quic/crypto/crypto_handshake_message.h" 10 #include "net/quic/crypto/crypto_handshake_message.h"
(...skipping 325 matching lines...) Expand 10 before | Expand all | Expand 10 after
336 max_idle_time_before_crypto_handshake_(QuicTime::Delta::Zero()), 336 max_idle_time_before_crypto_handshake_(QuicTime::Delta::Zero()),
337 max_undecryptable_packets_(0), 337 max_undecryptable_packets_(0),
338 connection_options_(kCOPT, PRESENCE_OPTIONAL), 338 connection_options_(kCOPT, PRESENCE_OPTIONAL),
339 idle_connection_state_lifetime_seconds_(kICSL, PRESENCE_REQUIRED), 339 idle_connection_state_lifetime_seconds_(kICSL, PRESENCE_REQUIRED),
340 silent_close_(kSCLS, PRESENCE_OPTIONAL), 340 silent_close_(kSCLS, PRESENCE_OPTIONAL),
341 max_streams_per_connection_(kMSPC, PRESENCE_REQUIRED), 341 max_streams_per_connection_(kMSPC, PRESENCE_REQUIRED),
342 bytes_for_connection_id_(kTCID, PRESENCE_OPTIONAL), 342 bytes_for_connection_id_(kTCID, PRESENCE_OPTIONAL),
343 initial_round_trip_time_us_(kIRTT, PRESENCE_OPTIONAL), 343 initial_round_trip_time_us_(kIRTT, PRESENCE_OPTIONAL),
344 initial_stream_flow_control_window_bytes_(kSFCW, PRESENCE_OPTIONAL), 344 initial_stream_flow_control_window_bytes_(kSFCW, PRESENCE_OPTIONAL),
345 initial_session_flow_control_window_bytes_(kCFCW, PRESENCE_OPTIONAL), 345 initial_session_flow_control_window_bytes_(kCFCW, PRESENCE_OPTIONAL),
346 socket_receive_buffer_(kSRBF, PRESENCE_OPTIONAL) { 346 socket_receive_buffer_(kSRBF, PRESENCE_OPTIONAL),
347 multipath_enabled_(kMPTH, PRESENCE_OPTIONAL) {
347 SetDefaults(); 348 SetDefaults();
348 } 349 }
349 350
350 QuicConfig::~QuicConfig() {} 351 QuicConfig::~QuicConfig() {}
351 352
352 bool QuicConfig::SetInitialReceivedConnectionOptions( 353 bool QuicConfig::SetInitialReceivedConnectionOptions(
353 const QuicTagVector& tags) { 354 const QuicTagVector& tags) {
354 if (HasReceivedConnectionOptions()) { 355 if (HasReceivedConnectionOptions()) {
355 // If we have already received connection options (via handshake or due to a 356 // If we have already received connection options (via handshake or due to a
356 // previous call), don't re-initialize. 357 // previous call), don't re-initialize.
(...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after
513 } 514 }
514 515
515 bool QuicConfig::HasReceivedSocketReceiveBuffer() const { 516 bool QuicConfig::HasReceivedSocketReceiveBuffer() const {
516 return socket_receive_buffer_.HasReceivedValue(); 517 return socket_receive_buffer_.HasReceivedValue();
517 } 518 }
518 519
519 uint32_t QuicConfig::ReceivedSocketReceiveBuffer() const { 520 uint32_t QuicConfig::ReceivedSocketReceiveBuffer() const {
520 return socket_receive_buffer_.GetReceivedValue(); 521 return socket_receive_buffer_.GetReceivedValue();
521 } 522 }
522 523
524 void QuicConfig::SetMultipathEnabled(bool multipath_enabled) {
525 uint32_t value = multipath_enabled ? 1 : 0;
526 multipath_enabled_.set(value, value);
527 }
528
529 bool QuicConfig::MultipathEnabled() const {
530 return multipath_enabled_.GetUint32() > 0;
531 }
532
523 bool QuicConfig::negotiated() const { 533 bool QuicConfig::negotiated() const {
524 // TODO(ianswett): Add the negotiated parameters once and iterate over all 534 // TODO(ianswett): Add the negotiated parameters once and iterate over all
525 // of them in negotiated, ToHandshakeMessage, ProcessClientHello, and 535 // of them in negotiated, ToHandshakeMessage, ProcessClientHello, and
526 // ProcessServerHello. 536 // ProcessServerHello.
527 return idle_connection_state_lifetime_seconds_.negotiated() && 537 return idle_connection_state_lifetime_seconds_.negotiated() &&
528 max_streams_per_connection_.negotiated(); 538 max_streams_per_connection_.negotiated();
529 } 539 }
530 540
531 void QuicConfig::SetDefaults() { 541 void QuicConfig::SetDefaults() {
532 idle_connection_state_lifetime_seconds_.set(kMaximumIdleTimeoutSecs, 542 idle_connection_state_lifetime_seconds_.set(kMaximumIdleTimeoutSecs,
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
596 error_details); 606 error_details);
597 } 607 }
598 if (error == QUIC_NO_ERROR) { 608 if (error == QUIC_NO_ERROR) {
599 error = connection_options_.ProcessPeerHello(peer_hello, hello_type, 609 error = connection_options_.ProcessPeerHello(peer_hello, hello_type,
600 error_details); 610 error_details);
601 } 611 }
602 return error; 612 return error;
603 } 613 }
604 614
605 } // namespace net 615 } // namespace net
OLDNEW
« no previous file with comments | « net/quic/quic_config.h ('k') | net/quic/quic_connection.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698