Support 20byte connection IDs in QUIC v99
gfe-relnote: change max connection ID length, protected by disabled flag quic_enable_v99
PiperOrigin-RevId: 261237446
Change-Id: Iba22fe96d6a392c97f75f92f5c3b9ed7b11e3828
diff --git a/quic/core/quic_utils.cc b/quic/core/quic_utils.cc
index 4ff7489..58996f6 100644
--- a/quic/core/quic_utils.cc
+++ b/quic/core/quic_utils.cc
@@ -554,9 +554,9 @@
if (!VersionHasLengthPrefixedConnectionIds(transport_version)) {
return connection_id_length8 == 0 ||
(connection_id_length8 >= 4 &&
- connection_id_length8 <= kQuicMaxConnectionIdLength);
+ connection_id_length8 <= kQuicMaxConnectionId4BitLength);
}
- return connection_id_length8 <= kQuicMaxConnectionIdLength;
+ return connection_id_length8 <= kQuicMaxConnectionIdWithLengthPrefixLength;
}
// static
@@ -570,8 +570,8 @@
QuicUint128 QuicUtils::GenerateStatelessResetToken(
QuicConnectionId connection_id) {
uint64_t data_bytes[3] = {0, 0, 0};
- static_assert(sizeof(data_bytes) >= kQuicMaxConnectionIdLength,
- "kQuicMaxConnectionIdLength changed");
+ static_assert(sizeof(data_bytes) >= kQuicMaxConnectionIdAllVersionsLength,
+ "kQuicMaxConnectionIdAllVersionsLength changed");
memcpy(data_bytes, connection_id.data(), connection_id.length());
// This is designed so that the common case of 64bit connection IDs
// produces a stateless reset token that is equal to the connection ID