Remove unused QUIC version code This CL removes CurrentSupportedTransportVersions() and FilterSupportedTransportVersions() because they were no longer used apart from test code. This CL also improves the mechanism used by gfe_quic_fuzzer to enable all versions. gfe-relnote: remove unused code, no behavior change PiperOrigin-RevId: 284274377 Change-Id: I870ad7b202565281136f9d29ee9448c891d30512
diff --git a/quic/core/quic_dispatcher.cc b/quic/core/quic_dispatcher.cc index a1adda4..ae82fed 100644 --- a/quic/core/quic_dispatcher.cc +++ b/quic/core/quic_dispatcher.cc
@@ -239,6 +239,8 @@ expected_server_connection_id_length_( expected_server_connection_id_length), should_update_expected_server_connection_id_length_(false) { + QUIC_BUG_IF(GetSupportedVersions().empty()) + << "Trying to create dispatcher without any supported versions"; QUIC_DLOG(INFO) << "Created QuicDispatcher with versions: " << ParsedQuicVersionVectorToString(GetSupportedVersions()); }
diff --git a/quic/core/quic_version_manager_test.cc b/quic/core/quic_version_manager_test.cc index 19cf5bd..2abf986 100644 --- a/quic/core/quic_version_manager_test.cc +++ b/quic/core/quic_version_manager_test.cc
@@ -19,25 +19,33 @@ static_assert(QUIC_ARRAYSIZE(kSupportedTransportVersions) == 6u, "Supported versions out of sync"); SetQuicReloadableFlag(quic_enable_version_99, false); + SetQuicReloadableFlag(quic_supports_tls_handshake, false); QuicVersionManager manager(AllSupportedVersions()); - EXPECT_EQ(FilterSupportedTransportVersions(AllSupportedTransportVersions()), - manager.GetSupportedTransportVersions()); + ParsedQuicVersionVector expected_parsed_versions; + expected_parsed_versions.push_back( + ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_50)); + expected_parsed_versions.push_back( + ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_49)); + expected_parsed_versions.push_back( + ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_48)); + expected_parsed_versions.push_back( + ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_46)); + expected_parsed_versions.push_back( + ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_43)); - EXPECT_EQ(QuicTransportVersionVector({QUIC_VERSION_50, QUIC_VERSION_49, - QUIC_VERSION_48, QUIC_VERSION_46, - QUIC_VERSION_43}), - manager.GetSupportedTransportVersions()); + EXPECT_EQ(expected_parsed_versions, manager.GetSupportedVersions()); + + EXPECT_EQ(FilterSupportedVersions(AllSupportedVersions()), + manager.GetSupportedVersions()); SetQuicReloadableFlag(quic_enable_version_99, true); - EXPECT_EQ(QuicTransportVersionVector({QUIC_VERSION_99, QUIC_VERSION_50, - QUIC_VERSION_49, QUIC_VERSION_48, - QUIC_VERSION_46, QUIC_VERSION_43}), - manager.GetSupportedTransportVersions()); - - // Ensure that all versions are now supported. - EXPECT_EQ(FilterSupportedTransportVersions(AllSupportedTransportVersions()), - manager.GetSupportedTransportVersions()); + expected_parsed_versions.insert( + expected_parsed_versions.begin(), + ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_99)); + EXPECT_EQ(expected_parsed_versions, manager.GetSupportedVersions()); + EXPECT_EQ(FilterSupportedVersions(AllSupportedVersions()), + manager.GetSupportedVersions()); } } // namespace
diff --git a/quic/core/quic_versions.cc b/quic/core/quic_versions.cc index 4d90d78..f0a943f 100644 --- a/quic/core/quic_versions.cc +++ b/quic/core/quic_versions.cc
@@ -226,31 +226,10 @@ return supported_versions; } -// TODO(nharper): Remove this function when it is no longer in use. -QuicTransportVersionVector CurrentSupportedTransportVersions() { - return FilterSupportedTransportVersions(AllSupportedTransportVersions()); -} - ParsedQuicVersionVector CurrentSupportedVersions() { return FilterSupportedVersions(AllSupportedVersions()); } -// TODO(nharper): Remove this function when it is no longer in use. -QuicTransportVersionVector FilterSupportedTransportVersions( - QuicTransportVersionVector versions) { - ParsedQuicVersionVector parsed_versions; - for (QuicTransportVersion version : versions) { - parsed_versions.push_back(ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, version)); - } - ParsedQuicVersionVector filtered_parsed_versions = - FilterSupportedVersions(parsed_versions); - QuicTransportVersionVector filtered_versions; - for (ParsedQuicVersion version : filtered_parsed_versions) { - filtered_versions.push_back(version.transport_version); - } - return filtered_versions; -} - ParsedQuicVersionVector FilterSupportedVersions( ParsedQuicVersionVector versions) { ParsedQuicVersionVector filtered_versions;
diff --git a/quic/core/quic_versions.h b/quic/core/quic_versions.h index 0a4022e..5b09ad6 100644 --- a/quic/core/quic_versions.h +++ b/quic/core/quic_versions.h
@@ -236,11 +236,6 @@ // kSupportedTransportVersions and kSupportedHandshakeProtocols. QUIC_EXPORT_PRIVATE ParsedQuicVersionVector AllSupportedVersions(); -// Returns a vector of QUIC versions from kSupportedTransportVersions which -// exclude any versions which are disabled by flags. -QUIC_EXPORT_PRIVATE QuicTransportVersionVector -CurrentSupportedTransportVersions(); - // Returns a vector of QUIC versions that is the cartesian product of // kSupportedTransportVersions and kSupportedHandshakeProtocols, with any // versions disabled by flags excluded. @@ -248,11 +243,6 @@ // Returns a vector of QUIC versions from |versions| which exclude any versions // which are disabled by flags. -QUIC_EXPORT_PRIVATE QuicTransportVersionVector -FilterSupportedTransportVersions(QuicTransportVersionVector versions); - -// Returns a vector of QUIC versions from |versions| which exclude any versions -// which are disabled by flags. QUIC_EXPORT_PRIVATE ParsedQuicVersionVector FilterSupportedVersions(ParsedQuicVersionVector versions);
diff --git a/quic/core/quic_versions_test.cc b/quic/core/quic_versions_test.cc index 404aef7..5f2d7ba 100644 --- a/quic/core/quic_versions_test.cc +++ b/quic/core/quic_versions_test.cc
@@ -253,78 +253,77 @@ } } } -TEST_F(QuicVersionsTest, AllSupportedTransportVersions) { - QuicTransportVersionVector all_versions = AllSupportedTransportVersions(); - ASSERT_EQ(QUIC_ARRAYSIZE(kSupportedTransportVersions), all_versions.size()); - for (size_t i = 0; i < all_versions.size(); ++i) { - EXPECT_EQ(kSupportedTransportVersions[i], all_versions[i]); - } -} -TEST_F(QuicVersionsTest, FilterSupportedTransportVersionsAllVersions) { - QuicTransportVersionVector all_versions = AllSupportedTransportVersions(); +TEST_F(QuicVersionsTest, FilterSupportedVersionsAllVersions) { static_assert(QUIC_ARRAYSIZE(kSupportedTransportVersions) == 6u, "Supported versions out of sync"); SetQuicReloadableFlag(quic_enable_version_99, true); - ParsedQuicVersionVector parsed_versions; - for (QuicTransportVersion version : all_versions) { - parsed_versions.push_back(ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, version)); - } - QuicTransportVersionVector expected_versions = { - QUIC_VERSION_99, QUIC_VERSION_50, QUIC_VERSION_49, - QUIC_VERSION_48, QUIC_VERSION_46, QUIC_VERSION_43}; + SetQuicReloadableFlag(quic_supports_tls_handshake, true); ParsedQuicVersionVector expected_parsed_versions; - for (QuicTransportVersion version : expected_versions) { - expected_parsed_versions.push_back( - ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, version)); - } + expected_parsed_versions.push_back( + ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_99)); + expected_parsed_versions.push_back( + ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_50)); + expected_parsed_versions.push_back( + ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_49)); + expected_parsed_versions.push_back( + ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_48)); + expected_parsed_versions.push_back( + ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_46)); + expected_parsed_versions.push_back( + ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_43)); + expected_parsed_versions.push_back( + ParsedQuicVersion(PROTOCOL_TLS1_3, QUIC_VERSION_99)); + expected_parsed_versions.push_back( + ParsedQuicVersion(PROTOCOL_TLS1_3, QUIC_VERSION_50)); - ASSERT_EQ(expected_versions, FilterSupportedTransportVersions(all_versions)); - ASSERT_EQ(expected_parsed_versions, FilterSupportedVersions(parsed_versions)); + ASSERT_EQ(expected_parsed_versions, + FilterSupportedVersions(AllSupportedVersions())); + ASSERT_EQ(expected_parsed_versions, AllSupportedVersions()); } -TEST_F(QuicVersionsTest, FilterSupportedTransportVersionsNo99) { - QuicTransportVersionVector all_versions = AllSupportedTransportVersions(); +TEST_F(QuicVersionsTest, FilterSupportedVersionsNo99) { static_assert(QUIC_ARRAYSIZE(kSupportedTransportVersions) == 6u, "Supported versions out of sync"); SetQuicReloadableFlag(quic_enable_version_99, false); - ParsedQuicVersionVector parsed_versions; - for (QuicTransportVersion version : all_versions) { - parsed_versions.push_back(ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, version)); - } - QuicTransportVersionVector expected_versions = { - QUIC_VERSION_50, QUIC_VERSION_49, QUIC_VERSION_48, QUIC_VERSION_46, - QUIC_VERSION_43}; + SetQuicReloadableFlag(quic_supports_tls_handshake, true); ParsedQuicVersionVector expected_parsed_versions; - for (QuicTransportVersion version : expected_versions) { - expected_parsed_versions.push_back( - ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, version)); - } + expected_parsed_versions.push_back( + ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_50)); + expected_parsed_versions.push_back( + ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_49)); + expected_parsed_versions.push_back( + ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_48)); + expected_parsed_versions.push_back( + ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_46)); + expected_parsed_versions.push_back( + ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_43)); + expected_parsed_versions.push_back( + ParsedQuicVersion(PROTOCOL_TLS1_3, QUIC_VERSION_50)); - ASSERT_EQ(expected_versions, FilterSupportedTransportVersions(all_versions)); - ASSERT_EQ(expected_parsed_versions, FilterSupportedVersions(parsed_versions)); + ASSERT_EQ(expected_parsed_versions, + FilterSupportedVersions(AllSupportedVersions())); } -TEST_F(QuicVersionsTest, FilterSupportedTransportVersionsNoFlags) { - QuicTransportVersionVector all_versions = AllSupportedTransportVersions(); +TEST_F(QuicVersionsTest, FilterSupportedVersionsNoFlags) { static_assert(QUIC_ARRAYSIZE(kSupportedTransportVersions) == 6u, "Supported versions out of sync"); SetQuicReloadableFlag(quic_enable_version_99, false); - ParsedQuicVersionVector parsed_versions; - for (QuicTransportVersion version : all_versions) { - parsed_versions.push_back(ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, version)); - } - QuicTransportVersionVector expected_versions = { - QUIC_VERSION_50, QUIC_VERSION_49, QUIC_VERSION_48, QUIC_VERSION_46, - QUIC_VERSION_43}; + SetQuicReloadableFlag(quic_supports_tls_handshake, false); ParsedQuicVersionVector expected_parsed_versions; - for (QuicTransportVersion version : expected_versions) { - expected_parsed_versions.push_back( - ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, version)); - } + expected_parsed_versions.push_back( + ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_50)); + expected_parsed_versions.push_back( + ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_49)); + expected_parsed_versions.push_back( + ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_48)); + expected_parsed_versions.push_back( + ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_46)); + expected_parsed_versions.push_back( + ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_43)); - ASSERT_EQ(expected_versions, FilterSupportedTransportVersions(all_versions)); - ASSERT_EQ(expected_parsed_versions, FilterSupportedVersions(parsed_versions)); + ASSERT_EQ(expected_parsed_versions, + FilterSupportedVersions(AllSupportedVersions())); } TEST_F(QuicVersionsTest, LookUpVersionByIndex) {