Make transport_params in SessionCache a const reference, because it should always be present.
gfe-relnote: unused code, not protected.
PiperOrigin-RevId: 307943004
Change-Id: I692867a8cfc624f09a607cba297f9df7158ff1a9
diff --git a/quic/core/crypto/quic_crypto_client_config.h b/quic/core/crypto/quic_crypto_client_config.h
index b4675de..b28a31a 100644
--- a/quic/core/crypto/quic_crypto_client_config.h
+++ b/quic/core/crypto/quic_crypto_client_config.h
@@ -66,12 +66,10 @@
// copied. Multiple sessions might need to be inserted for a connection.
// SessionCache implementations should support storing
// multiple entries per server ID.
- // TODO(renjietang): Once params and application_states are wired up, change
- // the argument type to const&.
virtual void Insert(const QuicServerId& server_id,
bssl::UniquePtr<SSL_SESSION> session,
- TransportParameters* params,
- ApplicationState* application_states) = 0;
+ const TransportParameters& params,
+ const ApplicationState* application_state) = 0;
// Lookup is called once at the beginning of each TLS handshake to potentially
// provide the saved state both for the TLS handshake and for sending 0-RTT
diff --git a/quic/core/tls_client_handshaker.cc b/quic/core/tls_client_handshaker.cc
index f16fdd5..3770ebd 100644
--- a/quic/core/tls_client_handshaker.cc
+++ b/quic/core/tls_client_handshaker.cc
@@ -520,7 +520,7 @@
return;
}
session_cache_->Insert(server_id_, std::move(session),
- received_transport_params_.get(),
+ *received_transport_params_,
received_application_state_.get());
}
@@ -544,11 +544,11 @@
if (cached_tls_sessions_[1] != nullptr) {
// Insert the older session first.
session_cache_->Insert(server_id_, std::move(cached_tls_sessions_[1]),
- received_transport_params_.get(),
+ *received_transport_params_,
received_application_state_.get());
}
session_cache_->Insert(server_id_, std::move(cached_tls_sessions_[0]),
- received_transport_params_.get(),
+ *received_transport_params_,
received_application_state_.get());
}
}
diff --git a/quic/test_tools/simple_session_cache.cc b/quic/test_tools/simple_session_cache.cc
index bbb5f28..6a0cafb 100644
--- a/quic/test_tools/simple_session_cache.cc
+++ b/quic/test_tools/simple_session_cache.cc
@@ -11,8 +11,8 @@
void SimpleSessionCache::Insert(const QuicServerId& server_id,
bssl::UniquePtr<SSL_SESSION> session,
- TransportParameters* params,
- ApplicationState* application_state) {
+ const TransportParameters& params,
+ const ApplicationState* application_state) {
auto it = cache_entries_.find(server_id);
if (it == cache_entries_.end()) {
it = cache_entries_.insert(std::make_pair(server_id, Entry())).first;
@@ -24,9 +24,7 @@
it->second.application_state =
std::make_unique<ApplicationState>(*application_state);
}
- if (params != nullptr) {
- it->second.params = std::make_unique<TransportParameters>(*params);
- }
+ it->second.params = std::make_unique<TransportParameters>(params);
}
std::unique_ptr<QuicResumptionState> SimpleSessionCache::Lookup(
diff --git a/quic/test_tools/simple_session_cache.h b/quic/test_tools/simple_session_cache.h
index 0bb23e0..cfe3f4a 100644
--- a/quic/test_tools/simple_session_cache.h
+++ b/quic/test_tools/simple_session_cache.h
@@ -24,8 +24,8 @@
void Insert(const QuicServerId& server_id,
bssl::UniquePtr<SSL_SESSION> session,
- TransportParameters* params,
- ApplicationState* application_state) override;
+ const TransportParameters& params,
+ const ApplicationState* application_state) override;
std::unique_ptr<QuicResumptionState> Lookup(const QuicServerId& server_id,
const SSL_CTX* ctx) override;