gfe-relnote: Switch the QUIC flag to support TLS from a protocol flag to a reloadable flag, with a chrome_value = true. Set chrome_value = true for the QUIC enable v99 flag. PiperOrigin-RevId: 268259992 Change-Id: I6bdd2d0992eed6f2108fbdb7859053f7bfc74747
diff --git a/quic/core/http/end_to_end_test.cc b/quic/core/http/end_to_end_test.cc index 9e94a10..439d04e 100644 --- a/quic/core/http/end_to_end_test.cc +++ b/quic/core/http/end_to_end_test.cc
@@ -125,7 +125,7 @@ // handshake protocol). So these tests need to ensure that clients are never // attempting to do 0-RTT across incompatible versions. Chromium only // supports a single version at a time anyway. :) - SetQuicFlag(FLAGS_quic_supports_tls_handshake, use_tls_handshake); + SetQuicReloadableFlag(quic_supports_tls_handshake, use_tls_handshake); ParsedQuicVersionVector all_supported_versions = FilterSupportedVersions(AllSupportedVersions()); @@ -235,7 +235,7 @@ stream_factory_(nullptr), support_server_push_(false), expected_server_connection_id_length_(kQuicDefaultConnectionIdLength) { - SetQuicFlag(FLAGS_quic_supports_tls_handshake, true); + SetQuicReloadableFlag(quic_supports_tls_handshake, true); SetQuicReloadableFlag(quic_simplify_stop_waiting, true); client_supported_versions_ = GetParam().client_supported_versions; server_supported_versions_ = GetParam().server_supported_versions;
diff --git a/quic/core/http/quic_server_session_base_test.cc b/quic/core/http/quic_server_session_base_test.cc index 616da68..1d6ca76 100644 --- a/quic/core/http/quic_server_session_base_test.cc +++ b/quic/core/http/quic_server_session_base_test.cc
@@ -149,7 +149,7 @@ handshake_message_ = crypto_config_.AddDefaultConfig( QuicRandom::GetInstance(), &clock, QuicCryptoServerConfig::ConfigOptions()); - SetQuicFlag(FLAGS_quic_supports_tls_handshake, true); + SetQuicReloadableFlag(quic_supports_tls_handshake, true); session_->Initialize(); QuicSessionPeer::GetMutableCryptoStream(session_.get()) ->OnSuccessfulVersionNegotiation(supported_versions.front());
diff --git a/quic/core/http/quic_spdy_client_session_test.cc b/quic/core/http/quic_spdy_client_session_test.cc index 4291763..f8a0a0f 100644 --- a/quic/core/http/quic_spdy_client_session_test.cc +++ b/quic/core/http/quic_spdy_client_session_test.cc
@@ -82,7 +82,7 @@ QuicUtils::GetInvalidStreamId(GetParam().transport_version)), associated_stream_id_( QuicUtils::GetInvalidStreamId(GetParam().transport_version)) { - SetQuicFlag(FLAGS_quic_supports_tls_handshake, true); + SetQuicReloadableFlag(quic_supports_tls_handshake, true); Initialize(); // Advance the time, because timers do not like uninitialized times. connection_->AdvanceTime(QuicTime::Delta::FromSeconds(1));
diff --git a/quic/core/http/quic_spdy_client_stream_test.cc b/quic/core/http/quic_spdy_client_stream_test.cc index 0397bdb..be6a162 100644 --- a/quic/core/http/quic_spdy_client_stream_test.cc +++ b/quic/core/http/quic_spdy_client_stream_test.cc
@@ -66,7 +66,7 @@ connection_, &push_promise_index_), body_("hello world") { - SetQuicFlag(FLAGS_quic_supports_tls_handshake, true); + SetQuicReloadableFlag(quic_supports_tls_handshake, true); session_.Initialize(); headers_[":status"] = "200";
diff --git a/quic/core/quic_connection_test.cc b/quic/core/quic_connection_test.cc index 31986f0..cc4899b 100644 --- a/quic/core/quic_connection_test.cc +++ b/quic/core/quic_connection_test.cc
@@ -894,7 +894,7 @@ // Constructs various test permutations. std::vector<TestParams> GetTestParams() { QuicFlagSaver flags; - SetQuicFlag(FLAGS_quic_supports_tls_handshake, true); + SetQuicReloadableFlag(quic_supports_tls_handshake, true); std::vector<TestParams> params; ParsedQuicVersionVector all_supported_versions = AllSupportedVersions(); for (size_t i = 0; i < all_supported_versions.size(); ++i) { @@ -962,7 +962,7 @@ connection_id_included_(CONNECTION_ID_PRESENT), notifier_(&connection_), connection_close_frame_count_(0) { - SetQuicFlag(FLAGS_quic_supports_tls_handshake, true); + SetQuicReloadableFlag(quic_supports_tls_handshake, true); connection_.set_defer_send_in_response_to_packets(GetParam().ack_response == AckResponse::kDefer); for (EncryptionLevel level :
diff --git a/quic/core/quic_crypto_client_stream_test.cc b/quic/core/quic_crypto_client_stream_test.cc index 10b121a..7df73ce 100644 --- a/quic/core/quic_crypto_client_stream_test.cc +++ b/quic/core/quic_crypto_client_stream_test.cc
@@ -92,7 +92,7 @@ } TEST_F(QuicCryptoClientStreamTest, ConnectedAfterTlsHandshake) { - SetQuicFlag(FLAGS_quic_supports_tls_handshake, true); + SetQuicReloadableFlag(quic_supports_tls_handshake, true); supported_versions_.clear(); for (QuicTransportVersion transport_version : AllSupportedTransportVersions()) {
diff --git a/quic/core/quic_crypto_server_stream_test.cc b/quic/core/quic_crypto_server_stream_test.cc index a4cc69e..de47c68 100644 --- a/quic/core/quic_crypto_server_stream_test.cc +++ b/quic/core/quic_crypto_server_stream_test.cc
@@ -190,7 +190,7 @@ } TEST_P(QuicCryptoServerStreamTest, ConnectedAfterTlsHandshake) { - SetQuicFlag(FLAGS_quic_supports_tls_handshake, true); + SetQuicReloadableFlag(quic_supports_tls_handshake, true); client_options_.only_tls_versions = true; supported_versions_.clear(); for (QuicTransportVersion transport_version :
diff --git a/quic/core/quic_dispatcher_test.cc b/quic/core/quic_dispatcher_test.cc index f52fa64..34408e0 100644 --- a/quic/core/quic_dispatcher_test.cc +++ b/quic/core/quic_dispatcher_test.cc
@@ -417,7 +417,7 @@ // TLS is only supported in versions 47 and greater. return; } - SetQuicFlag(FLAGS_quic_supports_tls_handshake, true); + SetQuicReloadableFlag(quic_supports_tls_handshake, true); QuicSocketAddress client_address(QuicIpAddress::Loopback4(), 1); EXPECT_CALL(*dispatcher_,
diff --git a/quic/core/quic_framer_test.cc b/quic/core/quic_framer_test.cc index a1bf902..ed52624 100644 --- a/quic/core/quic_framer_test.cc +++ b/quic/core/quic_framer_test.cc
@@ -580,7 +580,7 @@ start_, Perspective::IS_SERVER, kQuicDefaultConnectionIdLength) { - SetQuicFlag(FLAGS_quic_supports_tls_handshake, true); + SetQuicReloadableFlag(quic_supports_tls_handshake, true); framer_.set_version(version_); if (framer_.version().KnowsWhichDecrypterToUse()) { framer_.InstallDecrypter(ENCRYPTION_INITIAL,
diff --git a/quic/core/quic_version_manager.cc b/quic/core/quic_version_manager.cc index 6b2f60e..6fd36b2 100644 --- a/quic/core/quic_version_manager.cc +++ b/quic/core/quic_version_manager.cc
@@ -18,7 +18,7 @@ enable_version_48_(GetQuicReloadableFlag(quic_enable_version_48_2)), enable_version_47_(GetQuicReloadableFlag(quic_enable_version_47)), disable_version_39_(GetQuicReloadableFlag(quic_disable_version_39)), - enable_tls_(GetQuicFlag(FLAGS_quic_supports_tls_handshake)), + enable_tls_(GetQuicReloadableFlag(quic_supports_tls_handshake)), allowed_supported_versions_(std::move(supported_versions)) { RefilterSupportedVersions(); } @@ -41,12 +41,12 @@ enable_version_48_ != GetQuicReloadableFlag(quic_enable_version_48_2) || enable_version_47_ != GetQuicReloadableFlag(quic_enable_version_47) || disable_version_39_ != GetQuicReloadableFlag(quic_disable_version_39) || - enable_tls_ != GetQuicFlag(FLAGS_quic_supports_tls_handshake)) { + enable_tls_ != GetQuicReloadableFlag(quic_supports_tls_handshake)) { enable_version_99_ = GetQuicReloadableFlag(quic_enable_version_99); enable_version_48_ = GetQuicReloadableFlag(quic_enable_version_48_2); enable_version_47_ = GetQuicReloadableFlag(quic_enable_version_47); disable_version_39_ = GetQuicReloadableFlag(quic_disable_version_39); - enable_tls_ = GetQuicFlag(FLAGS_quic_supports_tls_handshake); + enable_tls_ = GetQuicReloadableFlag(quic_supports_tls_handshake); RefilterSupportedVersions(); } }
diff --git a/quic/core/quic_versions.cc b/quic/core/quic_versions.cc index 4900911..d2f4297 100644 --- a/quic/core/quic_versions.cc +++ b/quic/core/quic_versions.cc
@@ -175,7 +175,7 @@ } std::vector<HandshakeProtocol> protocols = {PROTOCOL_QUIC_CRYPTO}; - if (GetQuicFlag(FLAGS_quic_supports_tls_handshake)) { + if (GetQuicReloadableFlag(quic_supports_tls_handshake)) { protocols.push_back(PROTOCOL_TLS1_3); } for (QuicTransportVersion version : kSupportedTransportVersions) { @@ -188,7 +188,7 @@ } } // Still recognize T099 even if flag quic_ietf_draft_version has been changed. - if (GetQuicFlag(FLAGS_quic_supports_tls_handshake) && + if (GetQuicReloadableFlag(quic_supports_tls_handshake) && version_string == "T099") { return ParsedQuicVersion(PROTOCOL_TLS1_3, QUIC_VERSION_99); } @@ -252,7 +252,7 @@ filtered_versions.reserve(versions.size()); for (ParsedQuicVersion version : versions) { if (version.handshake_protocol == PROTOCOL_TLS1_3 && - !GetQuicFlag(FLAGS_quic_supports_tls_handshake)) { + !GetQuicReloadableFlag(quic_supports_tls_handshake)) { continue; } if (version.transport_version == QUIC_VERSION_99) { @@ -455,7 +455,7 @@ void QuicVersionInitializeSupportForIetfDraft() { // Enable necessary flags. - SetQuicFlag(FLAGS_quic_supports_tls_handshake, true); + SetQuicReloadableFlag(quic_supports_tls_handshake, true); SetQuicReloadableFlag(quic_simplify_stop_waiting, true); SetQuicReloadableFlag(quic_use_parse_public_header, true); SetQuicRestartFlag(quic_use_hashed_stateless_reset_tokens, true); @@ -463,7 +463,7 @@ void QuicEnableVersion(ParsedQuicVersion parsed_version) { if (parsed_version.handshake_protocol == PROTOCOL_TLS1_3) { - SetQuicFlag(FLAGS_quic_supports_tls_handshake, true); + SetQuicReloadableFlag(quic_supports_tls_handshake, true); } static_assert(QUIC_ARRAYSIZE(kSupportedTransportVersions) == 6u, "Supported versions out of sync");
diff --git a/quic/core/quic_versions_test.cc b/quic/core/quic_versions_test.cc index f5b0dd2..519d345 100644 --- a/quic/core/quic_versions_test.cc +++ b/quic/core/quic_versions_test.cc
@@ -153,7 +153,7 @@ EXPECT_EQ(UnsupportedQuicVersion(), ParseQuicVersionString("Q047 ")); // Test a TLS version: - SetQuicFlag(FLAGS_quic_supports_tls_handshake, true); + SetQuicReloadableFlag(quic_supports_tls_handshake, true); EXPECT_EQ(ParsedQuicVersion(PROTOCOL_TLS1_3, QUIC_VERSION_39), ParseQuicVersionString("T039")); EXPECT_EQ(ParsedQuicVersion(PROTOCOL_TLS1_3, QUIC_VERSION_43), @@ -473,7 +473,7 @@ } TEST_F(QuicVersionsTest, QuicEnableVersion) { - SetQuicFlag(FLAGS_quic_supports_tls_handshake, true); + SetQuicReloadableFlag(quic_supports_tls_handshake, true); ParsedQuicVersion parsed_version_q047 = ParsedQuicVersion(PROTOCOL_QUIC_CRYPTO, QUIC_VERSION_47); ParsedQuicVersion parsed_version_t047 = @@ -484,7 +484,7 @@ ParsedQuicVersion(PROTOCOL_TLS1_3, QUIC_VERSION_48); ParsedQuicVersion parsed_version_t099 = ParsedQuicVersion(PROTOCOL_TLS1_3, QUIC_VERSION_99); - SetQuicFlag(FLAGS_quic_supports_tls_handshake, false); + SetQuicReloadableFlag(quic_supports_tls_handshake, false); SetQuicReloadableFlag(quic_disable_version_39, false); SetQuicReloadableFlag(quic_enable_version_47, false); SetQuicReloadableFlag(quic_enable_version_48_2, false); @@ -493,7 +493,7 @@ { QuicFlagSaver flag_saver; QuicEnableVersion(parsed_version_q047); - EXPECT_FALSE(GetQuicFlag(FLAGS_quic_supports_tls_handshake)); + EXPECT_FALSE(GetQuicReloadableFlag(quic_supports_tls_handshake)); EXPECT_TRUE(GetQuicReloadableFlag(quic_enable_version_47)); EXPECT_FALSE(GetQuicReloadableFlag(quic_enable_version_48_2)); EXPECT_FALSE(GetQuicReloadableFlag(quic_enable_version_99)); @@ -502,7 +502,7 @@ { QuicFlagSaver flag_saver; QuicEnableVersion(parsed_version_t047); - EXPECT_TRUE(GetQuicFlag(FLAGS_quic_supports_tls_handshake)); + EXPECT_TRUE(GetQuicReloadableFlag(quic_supports_tls_handshake)); EXPECT_TRUE(GetQuicReloadableFlag(quic_enable_version_47)); EXPECT_FALSE(GetQuicReloadableFlag(quic_enable_version_48_2)); EXPECT_FALSE(GetQuicReloadableFlag(quic_enable_version_99)); @@ -511,7 +511,7 @@ { QuicFlagSaver flag_saver; QuicEnableVersion(parsed_version_q048); - EXPECT_FALSE(GetQuicFlag(FLAGS_quic_supports_tls_handshake)); + EXPECT_FALSE(GetQuicReloadableFlag(quic_supports_tls_handshake)); EXPECT_FALSE(GetQuicReloadableFlag(quic_enable_version_47)); EXPECT_TRUE(GetQuicReloadableFlag(quic_enable_version_48_2)); EXPECT_FALSE(GetQuicReloadableFlag(quic_enable_version_99)); @@ -520,7 +520,7 @@ { QuicFlagSaver flag_saver; QuicEnableVersion(parsed_version_t048); - EXPECT_TRUE(GetQuicFlag(FLAGS_quic_supports_tls_handshake)); + EXPECT_TRUE(GetQuicReloadableFlag(quic_supports_tls_handshake)); EXPECT_FALSE(GetQuicReloadableFlag(quic_enable_version_47)); EXPECT_TRUE(GetQuicReloadableFlag(quic_enable_version_48_2)); EXPECT_FALSE(GetQuicReloadableFlag(quic_enable_version_99)); @@ -529,7 +529,7 @@ { QuicFlagSaver flag_saver; QuicEnableVersion(parsed_version_t099); - EXPECT_TRUE(GetQuicFlag(FLAGS_quic_supports_tls_handshake)); + EXPECT_TRUE(GetQuicReloadableFlag(quic_supports_tls_handshake)); EXPECT_FALSE(GetQuicReloadableFlag(quic_enable_version_47)); EXPECT_FALSE(GetQuicReloadableFlag(quic_enable_version_48_2)); EXPECT_TRUE(GetQuicReloadableFlag(quic_enable_version_99));
diff --git a/quic/core/tls_handshaker.cc b/quic/core/tls_handshaker.cc index e6e59fd..f2089cd 100644 --- a/quic/core/tls_handshaker.cc +++ b/quic/core/tls_handshaker.cc
@@ -17,7 +17,7 @@ QuicSession* session, SSL_CTX* /*ssl_ctx*/) : stream_(stream), session_(session) { - QUIC_BUG_IF(!GetQuicFlag(FLAGS_quic_supports_tls_handshake)) + QUIC_BUG_IF(!GetQuicReloadableFlag(quic_supports_tls_handshake)) << "Attempted to create TLS handshaker when TLS is disabled"; }
diff --git a/quic/core/tls_handshaker_test.cc b/quic/core/tls_handshaker_test.cc index 6b7633f..168dc55 100644 --- a/quic/core/tls_handshaker_test.cc +++ b/quic/core/tls_handshaker_test.cc
@@ -294,7 +294,7 @@ {ParsedQuicVersion(PROTOCOL_TLS1_3, QUIC_VERSION_99)})), client_session_(client_conn_, /*create_mock_crypto_stream=*/false), server_session_(server_conn_, /*create_mock_crypto_stream=*/false) { - SetQuicFlag(FLAGS_quic_supports_tls_handshake, true); + SetQuicReloadableFlag(quic_supports_tls_handshake, true); client_stream_ = new TestQuicCryptoClientStream(&client_session_); client_session_.SetCryptoStream(client_stream_); server_stream_ =
diff --git a/quic/tools/quic_simple_server_session_test.cc b/quic/tools/quic_simple_server_session_test.cc index b21d9fa..378edec 100644 --- a/quic/tools/quic_simple_server_session_test.cc +++ b/quic/tools/quic_simple_server_session_test.cc
@@ -192,7 +192,7 @@ KeyExchangeSource::Default()), compressed_certs_cache_( QuicCompressedCertsCache::kQuicCompressedCertsCacheSize) { - SetQuicFlag(FLAGS_quic_supports_tls_handshake, true); + SetQuicReloadableFlag(quic_supports_tls_handshake, true); config_.SetMaxIncomingBidirectionalStreamsToSend(kMaxStreamsForTest); QuicConfigPeer::SetReceivedMaxIncomingBidirectionalStreams( &config_, kMaxStreamsForTest);
diff --git a/quic/tools/quic_toy_client.cc b/quic/tools/quic_toy_client.cc index b843221..42eadf8 100644 --- a/quic/tools/quic_toy_client.cc +++ b/quic/tools/quic_toy_client.cc
@@ -189,7 +189,7 @@ } else if (!quic_version_string.empty()) { if (quic_version_string[0] == 'T') { // ParseQuicVersionString checks quic_supports_tls_handshake. - SetQuicFlag(FLAGS_quic_supports_tls_handshake, true); + SetQuicReloadableFlag(quic_supports_tls_handshake, true); } quic::ParsedQuicVersion parsed_quic_version = quic::ParseQuicVersionString(quic_version_string);