gfe-relnote: In QUIC, terminate Google QUIC connections (<= v43) similar as IETF QUIC connection. Protected by gfe2_reloadable_flag_quic_terminate_gquic_connection_as_ietf.
Use version_flag to indicate whether the connection is pre or post handshake.
PiperOrigin-RevId: 244349046
Change-Id: I3af6c5f14f12168351c8908bf03eab6c8d24740a
diff --git a/quic/core/quic_dispatcher.h b/quic/core/quic_dispatcher.h
index a6d7e37..af268f9 100644
--- a/quic/core/quic_dispatcher.h
+++ b/quic/core/quic_dispatcher.h
@@ -339,6 +339,7 @@
void StatelesslyTerminateConnection(
QuicConnectionId connection_id,
PacketHeaderFormat format,
+ bool version_flag,
ParsedQuicVersion version,
QuicErrorCode error_code,
const std::string& error_details,
@@ -380,6 +381,7 @@
// packets, like ValidityChecks, and invokes ProcessUnauthenticatedHeaderFate.
void MaybeRejectStatelessly(QuicConnectionId connection_id,
PacketHeaderFormat form,
+ bool version_flag,
ParsedQuicVersion version);
// Deliver |packets| to |session| for further processing.
@@ -392,6 +394,7 @@
void ProcessUnauthenticatedHeaderFate(QuicPacketFate fate,
QuicConnectionId connection_id,
PacketHeaderFormat form,
+ bool version_flag,
ParsedQuicVersion version);
// Invoked when StatelessRejector::Process completes. |first_version| is the
@@ -407,14 +410,16 @@
const QuicSocketAddress& current_self_address,
std::unique_ptr<QuicReceivedPacket> current_packet,
ParsedQuicVersion first_version,
- PacketHeaderFormat current_packet_format);
+ PacketHeaderFormat current_packet_format,
+ bool current_version_flag);
// Examine the state of the rejector and decide what to do with the current
// packet.
void ProcessStatelessRejectorState(
std::unique_ptr<StatelessRejector> rejector,
QuicTransportVersion first_version,
- PacketHeaderFormat form);
+ PacketHeaderFormat form,
+ bool version_flag);
// If the connection ID length is different from what the dispatcher expects,
// replace the connection ID with a random one of the right length,