Deprecate quic_allow_very_long_connection_ids gfe-relnote: deprecate gfe2_restart_flag_quic_allow_very_long_connection_ids PiperOrigin-RevId: 293391205 Change-Id: I075bf308aa3a7b668ccaaa67efdeecabd51df714
diff --git a/quic/core/quic_connection_id.cc b/quic/core/quic_connection_id.cc index c514450..7e31f16 100644 --- a/quic/core/quic_connection_id.cc +++ b/quic/core/quic_connection_id.cc
@@ -53,20 +53,6 @@ QuicConnectionId::QuicConnectionId() : QuicConnectionId(nullptr, 0) {} QuicConnectionId::QuicConnectionId(const char* data, uint8_t length) { - if (!GetQuicRestartFlag(quic_allow_very_long_connection_ids)) { - // TODO(dschinazi) remove kQuicMaxConnectionIdAllVersionsLength entirely - // when we deprecate quic_allow_very_long_connection_ids. - static_assert(kQuicMaxConnectionIdAllVersionsLength <= - std::numeric_limits<uint8_t>::max(), - "kQuicMaxConnectionIdAllVersionsLength too high"); - if (length > kQuicMaxConnectionIdAllVersionsLength) { - QUIC_BUG << "Attempted to create connection ID of length " - << static_cast<int>(length); - length = kQuicMaxConnectionIdAllVersionsLength; - } - } else { - QUIC_RESTART_FLAG_COUNT_N(quic_allow_very_long_connection_ids, 3, 5); - } length_ = length; if (length_ == 0) { return; @@ -115,15 +101,6 @@ } void QuicConnectionId::set_length(uint8_t length) { - if (!GetQuicRestartFlag(quic_allow_very_long_connection_ids)) { - if (length > kQuicMaxConnectionIdAllVersionsLength) { - QUIC_BUG << "Attempted to set connection ID length to " - << static_cast<int>(length); - length = kQuicMaxConnectionIdAllVersionsLength; - } - } else { - QUIC_RESTART_FLAG_COUNT_N(quic_allow_very_long_connection_ids, 4, 5); - } char temporary_data[sizeof(data_short_)]; if (length > sizeof(data_short_)) { if (length_ <= sizeof(data_short_)) {
diff --git a/quic/core/quic_connection_id.h b/quic/core/quic_connection_id.h index 25af43d..52d5e11 100644 --- a/quic/core/quic_connection_id.h +++ b/quic/core/quic_connection_id.h
@@ -25,9 +25,6 @@ CONNECTION_ID_ABSENT = 2, }; -// Maximum connection ID length that we support in any packet or version. -const uint8_t kQuicMaxConnectionIdAllVersionsLength = 20; - // Maximum connection ID length supported by versions that use the encoding from // draft-ietf-quic-invariants-06. const uint8_t kQuicMaxConnectionIdWithLengthPrefixLength = 20;
diff --git a/quic/core/quic_connection_id_test.cc b/quic/core/quic_connection_id_test.cc index dbc8214..3fa7c02 100644 --- a/quic/core/quic_connection_id_test.cc +++ b/quic/core/quic_connection_id_test.cc
@@ -92,7 +92,6 @@ // Verify that any two all-zero connection IDs of different lengths never // have the same hash. - SetQuicRestartFlag(quic_allow_very_long_connection_ids, true); const char connection_id_bytes[255] = {}; for (uint8_t i = 0; i < sizeof(connection_id_bytes) - 1; ++i) { QuicConnectionId connection_id_i(connection_id_bytes, i);
diff --git a/quic/core/quic_data_reader.cc b/quic/core/quic_data_reader.cc index 882573d..fac462a 100644 --- a/quic/core/quic_data_reader.cc +++ b/quic/core/quic_data_reader.cc
@@ -60,15 +60,6 @@ bool QuicDataReader::ReadConnectionId(QuicConnectionId* connection_id, uint8_t length) { - if (!GetQuicRestartFlag(quic_allow_very_long_connection_ids)) { - if (length > kQuicMaxConnectionIdAllVersionsLength) { - QUIC_BUG << "Attempted to read connection ID with length too high " - << static_cast<int>(length); - return false; - } - } else { - QUIC_RESTART_FLAG_COUNT_N(quic_allow_very_long_connection_ids, 1, 5); - } if (length == 0) { connection_id->set_length(0); return true; @@ -91,13 +82,6 @@ if (!ReadUInt8(&connection_id_length)) { return false; } - if (!GetQuicRestartFlag(quic_allow_very_long_connection_ids)) { - if (connection_id_length > kQuicMaxConnectionIdAllVersionsLength) { - return false; - } - } else { - QUIC_RESTART_FLAG_COUNT_N(quic_allow_very_long_connection_ids, 2, 5); - } return ReadConnectionId(connection_id, connection_id_length); }
diff --git a/quic/core/quic_data_writer_test.cc b/quic/core/quic_data_writer_test.cc index e655905..d27b8b1 100644 --- a/quic/core/quic_data_writer_test.cc +++ b/quic/core/quic_data_writer_test.cc
@@ -1167,26 +1167,6 @@ EXPECT_EQ(8, reader4.PeekVarInt62Length()); } -TEST_P(QuicDataWriterTest, InvalidConnectionIdLengthRead) { - SetQuicRestartFlag(quic_allow_very_long_connection_ids, false); - // TODO(dschinazi) delete this test when we deprecate - // quic_allow_very_long_connection_ids. - static const uint8_t bad_connection_id_length = 200; - static_assert( - bad_connection_id_length > kQuicMaxConnectionIdAllVersionsLength, - "bad lengths"); - char buffer[255] = {}; - QuicDataReader reader(buffer, sizeof(buffer)); - QuicConnectionId connection_id; - bool ok; - EXPECT_QUIC_BUG( - ok = reader.ReadConnectionId(&connection_id, bad_connection_id_length), - quiche::QuicheStrCat( - "Attempted to read connection ID with length too high ", - static_cast<int>(bad_connection_id_length))); - EXPECT_FALSE(ok); -} - // Test that ReadVarIntU32 works properly. Tests a valid stream count // (a 32 bit number) and an invalid one (a >32 bit number) TEST_P(QuicDataWriterTest, ValidU32) {
diff --git a/quic/core/quic_dispatcher_test.cc b/quic/core/quic_dispatcher_test.cc index ac35793..44e2bb7 100644 --- a/quic/core/quic_dispatcher_test.cc +++ b/quic/core/quic_dispatcher_test.cc
@@ -537,7 +537,6 @@ TEST_F(QuicDispatcherTest, StatelessVersionNegotiationWithVeryLongConnectionId) { - SetQuicRestartFlag(quic_allow_very_long_connection_ids, true); QuicConnectionId connection_id = QuicUtils::CreateRandomConnectionId(33); CreateTimeWaitListManager(); QuicSocketAddress client_address(QuicIpAddress::Loopback4(), 1);
diff --git a/quic/core/quic_framer_test.cc b/quic/core/quic_framer_test.cc index 8e272ce..88845af 100644 --- a/quic/core/quic_framer_test.cc +++ b/quic/core/quic_framer_test.cc
@@ -10591,13 +10591,8 @@ AssemblePacketFromFragments(packet99)); EXPECT_FALSE(framer_.ProcessPacket(*encrypted)); EXPECT_THAT(framer_.error(), IsError(QUIC_INVALID_NEW_CONNECTION_ID_DATA)); - if (!GetQuicRestartFlag(quic_allow_very_long_connection_ids)) { - EXPECT_EQ("Unable to read new connection ID frame connection id.", - framer_.detailed_error()); - } else { - EXPECT_EQ("Invalid new connection ID length for version.", - framer_.detailed_error()); - } + EXPECT_EQ("Invalid new connection ID length for version.", + framer_.detailed_error()); } // Verifies that parsing a NEW_CONNECTION_ID frame with an invalid
diff --git a/quic/core/quic_utils.cc b/quic/core/quic_utils.cc index f5eecd7..8057a7d 100644 --- a/quic/core/quic_utils.cc +++ b/quic/core/quic_utils.cc
@@ -548,13 +548,10 @@ return false; } - if (GetQuicRestartFlag(quic_allow_very_long_connection_ids)) { - QUIC_RESTART_FLAG_COUNT_N(quic_allow_very_long_connection_ids, 5, 5); - if (transport_version == QUIC_VERSION_UNSUPPORTED || - transport_version == QUIC_VERSION_RESERVED_FOR_NEGOTIATION) { - // Unknown versions could allow connection ID lengths up to 255. - return true; - } + if (transport_version == QUIC_VERSION_UNSUPPORTED || + transport_version == QUIC_VERSION_RESERVED_FOR_NEGOTIATION) { + // Unknown versions could allow connection ID lengths up to 255. + return true; } const uint8_t connection_id_length8 =
diff --git a/quic/core/quic_utils_test.cc b/quic/core/quic_utils_test.cc index e6fe1a2..1381b20 100644 --- a/quic/core/quic_utils_test.cc +++ b/quic/core/quic_utils_test.cc
@@ -184,7 +184,6 @@ TEST_F(QuicUtilsTest, ReplacementConnectionIdLengthIsCorrect) { // Verify that all lengths get replaced by kQuicDefaultConnectionIdLength. - SetQuicRestartFlag(quic_allow_very_long_connection_ids, true); const char connection_id_bytes[255] = {}; for (uint8_t i = 0; i < sizeof(connection_id_bytes) - 1; ++i) { QuicConnectionId connection_id(connection_id_bytes, i);