Internal change
PiperOrigin-RevId: 373359297
diff --git a/quic/core/http/end_to_end_test.cc b/quic/core/http/end_to_end_test.cc
index cac17ff..21300de 100644
--- a/quic/core/http/end_to_end_test.cc
+++ b/quic/core/http/end_to_end_test.cc
@@ -4513,11 +4513,7 @@
client_.reset(CreateQuicClient(client_writer_));
EXPECT_EQ("", client_->SendSynchronousRequest("/foo"));
- if (GetQuicReloadableFlag(quic_fix_dispatcher_sent_error_code)) {
- EXPECT_THAT(client_->connection_error(), IsError(QUIC_PACKET_WRITE_ERROR));
- } else {
- EXPECT_THAT(client_->connection_error(), IsError(QUIC_HANDSHAKE_FAILED));
- }
+ EXPECT_THAT(client_->connection_error(), IsError(QUIC_HANDSHAKE_FAILED));
}
// Regression test for b/116200989.
diff --git a/quic/core/quic_dispatcher.cc b/quic/core/quic_dispatcher.cc
index 394253b..d17c8bd 100644
--- a/quic/core/quic_dispatcher.cc
+++ b/quic/core/quic_dispatcher.cc
@@ -776,9 +776,9 @@
void QuicDispatcher::CleanUpSession(QuicConnectionId server_connection_id,
QuicConnection* connection,
- QuicErrorCode error,
- const std::string& error_details,
- ConnectionCloseSource source) {
+ QuicErrorCode /*error*/,
+ const std::string& /*error_details*/,
+ ConnectionCloseSource /*source*/) {
write_blocked_list_.erase(connection);
QuicTimeWaitListManager::TimeWaitAction action =
QuicTimeWaitListManager::SEND_STATELESS_RESET;
@@ -787,14 +787,8 @@
action = QuicTimeWaitListManager::SEND_CONNECTION_CLOSE_PACKETS;
} else {
if (!connection->IsHandshakeComplete()) {
- const bool fix_dispatcher_sent_error_code =
- GetQuicReloadableFlag(quic_fix_dispatcher_sent_error_code) &&
- source == ConnectionCloseSource::FROM_SELF;
// TODO(fayang): Do not serialize connection close packet if the
// connection is closed by the client.
- if (fix_dispatcher_sent_error_code) {
- QUIC_RELOADABLE_FLAG_COUNT(quic_fix_dispatcher_sent_error_code);
- }
if (!connection->version().HasIetfInvariantHeader()) {
QUIC_CODE_COUNT(gquic_add_to_time_wait_list_with_handshake_failed);
} else {
@@ -809,10 +803,8 @@
server_connection_id, connection->version(), helper_.get(),
time_wait_list_manager_.get());
terminator.CloseConnection(
- fix_dispatcher_sent_error_code ? error : QUIC_HANDSHAKE_FAILED,
- fix_dispatcher_sent_error_code
- ? error_details
- : "Connection is closed by server before handshake confirmed",
+ QUIC_HANDSHAKE_FAILED,
+ "Connection is closed by server before handshake confirmed",
connection->version().HasIetfInvariantHeader(),
connection->GetActiveServerConnectionIds());
} else {
@@ -826,11 +818,8 @@
: GOOGLE_QUIC_PACKET,
/*version_flag=*/true,
connection->version().HasLengthPrefixedConnectionIds(),
- connection->version(),
- fix_dispatcher_sent_error_code ? error : QUIC_HANDSHAKE_FAILED,
- fix_dispatcher_sent_error_code
- ? error_details
- : "Connection is closed by server before handshake confirmed",
+ connection->version(), QUIC_HANDSHAKE_FAILED,
+ "Connection is closed by server before handshake confirmed",
// Although it is our intention to send termination packets, the
// |action| argument is not used by this call to
// StatelesslyTerminateConnection().
diff --git a/quic/core/quic_flags_list.h b/quic/core/quic_flags_list.h
index 0608993..42d3360 100644
--- a/quic/core/quic_flags_list.h
+++ b/quic/core/quic_flags_list.h
@@ -45,7 +45,6 @@
QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_encrypted_control_frames, false)
QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_encrypted_goaway, true)
QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_error_on_http3_push, true)
-QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_fix_dispatcher_sent_error_code, false)
QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_fix_on_stream_reset, true)
QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_fix_stateless_reset, false)
QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_fix_willing_and_able_to_write2, true)