gfe-relnote: Add kSupportedVersions to quic_versions.h, no behavior change
PiperOrigin-RevId: 289758796
Change-Id: Iaea196d5a8d8fb15c6c4b4b871f0d92959b12515
diff --git a/quic/core/quic_versions.cc b/quic/core/quic_versions.cc
index 6daac15..f8acb5b 100644
--- a/quic/core/quic_versions.cc
+++ b/quic/core/quic_versions.cc
@@ -275,16 +275,8 @@
}
ParsedQuicVersionVector AllSupportedVersions() {
- ParsedQuicVersionVector supported_versions;
- for (HandshakeProtocol handshake_protocol : kSupportedHandshakeProtocols) {
- for (QuicTransportVersion transport_version : kSupportedTransportVersions) {
- if (ParsedQuicVersionIsValid(handshake_protocol, transport_version)) {
- supported_versions.push_back(
- ParsedQuicVersion(handshake_protocol, transport_version));
- }
- }
- }
- return supported_versions;
+ return ParsedQuicVersionVector(kSupportedVersions.begin(),
+ kSupportedVersions.end());
}
ParsedQuicVersionVector CurrentSupportedVersions() {
diff --git a/quic/core/quic_versions.h b/quic/core/quic_versions.h
index 6adf748..6d6456f 100644
--- a/quic/core/quic_versions.h
+++ b/quic/core/quic_versions.h
@@ -290,6 +290,17 @@
static const HandshakeProtocol kSupportedHandshakeProtocols[] = {
PROTOCOL_QUIC_CRYPTO, PROTOCOL_TLS1_3};
+static const std::array<ParsedQuicVersion, 8> kSupportedVersions = {
+ ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_99),
+ ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_50),
+ ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_49),
+ ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_48),
+ ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_46),
+ ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_43),
+ ParsedQuicVersion(PROTOCOL_TLS1_3, QUIC_VERSION_99),
+ ParsedQuicVersion(PROTOCOL_TLS1_3, QUIC_VERSION_50),
+};
+
typedef std::vector<QuicTransportVersion> QuicTransportVersionVector;
// Returns a vector of QUIC versions in kSupportedTransportVersions.
diff --git a/quic/core/quic_versions_test.cc b/quic/core/quic_versions_test.cc
index 81f9940..cbaab95 100644
--- a/quic/core/quic_versions_test.cc
+++ b/quic/core/quic_versions_test.cc
@@ -478,6 +478,21 @@
}
}
+TEST_F(QuicVersionsTest, SupportedVersionsHasCorrectList) {
+ size_t index = 0;
+ for (HandshakeProtocol handshake_protocol : kSupportedHandshakeProtocols) {
+ for (QuicTransportVersion transport_version : kSupportedTransportVersions) {
+ SCOPED_TRACE(index);
+ if (ParsedQuicVersionIsValid(handshake_protocol, transport_version)) {
+ EXPECT_EQ(kSupportedVersions[index],
+ ParsedQuicVersion(handshake_protocol, transport_version));
+ index++;
+ }
+ }
+ }
+ EXPECT_EQ(kSupportedVersions.size(), index);
+}
+
} // namespace
} // namespace test
} // namespace quic