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

Unified Diff: net/quic/core/quic_crypto_server_stream.cc

Issue 2873883002: Add QUIC handshake accounting. Protected by (Closed)
Patch Set: Created 3 years, 7 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/quic/core/quic_crypto_server_stream.h ('k') | net/quic/core/quic_crypto_server_stream_test.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/quic/core/quic_crypto_server_stream.cc
diff --git a/net/quic/core/quic_crypto_server_stream.cc b/net/quic/core/quic_crypto_server_stream.cc
index d45cccd90adbfc27d846accf4190597d08ec094f..6912d2f88364c80a14ac237c6cc1392033d90f94 100644
--- a/net/quic/core/quic_crypto_server_stream.cc
+++ b/net/quic/core/quic_crypto_server_stream.cc
@@ -97,6 +97,7 @@ QuicCryptoServerStream::QuicCryptoServerStream(
use_stateless_rejects_if_peer_supported_(
use_stateless_rejects_if_peer_supported),
peer_supports_stateless_rejects_(false),
+ zero_rtt_attempted_(false),
chlo_packet_size_(0),
validate_client_hello_cb_(nullptr),
process_client_hello_cb_(nullptr) {
@@ -373,6 +374,10 @@ bool QuicCryptoServerStream::PeerSupportsStatelessRejects() const {
return peer_supports_stateless_rejects_;
}
+bool QuicCryptoServerStream::ZeroRttAttempted() const {
+ return zero_rtt_attempted_;
+}
+
void QuicCryptoServerStream::SetPeerSupportsStatelessRejects(
bool peer_supports_stateless_rejects) {
peer_supports_stateless_rejects_ = peer_supports_stateless_rejects;
@@ -413,10 +418,16 @@ void QuicCryptoServerStream::ProcessClientHello(
nullptr);
return;
}
-
if (!result->info.server_nonce.empty()) {
++num_handshake_messages_with_server_nonces_;
}
+
+ if (num_handshake_messages_ == 1) {
+ // Client attempts zero RTT handshake by sending a non-inchoate CHLO.
+ QuicStringPiece public_value;
+ zero_rtt_attempted_ = message.GetStringPiece(kPUBS, &public_value);
+ }
+
// Store the bandwidth estimate from the client.
if (result->cached_network_params.bandwidth_estimate_bytes_per_second() > 0) {
previous_cached_network_params_.reset(
« no previous file with comments | « net/quic/core/quic_crypto_server_stream.h ('k') | net/quic/core/quic_crypto_server_stream_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698