QuicConnection methods call CloseConnection rather than
TearDownLocalConnectionState
Some of the QuicConnection methods call TearDownLocalConnectionState
rather than CloseConnection. This changes then all to call CloseConnection,
specifying ConnectionCloseBehavior::SILENT_CLOSE.
Some tests modified to expect calls to CloseConnection (preventing test failure due to unexpected calls). Before this CL the connection closing happened via internal calls directly to TearDownLocalConnectionState; now these calls go through CloseConnection and trigger the expect.
This is done in preparation for landing another CL adding IETF QUIC Connection Close functionality.
QuicConnection::OnUnrecoverableError (which is an override of QuicPacketCreator::OnUnrecoverableError) called TearDownLocalConnectionState. It had to be modified to call CloseConnection. OnUnrecoverableError has a ConnectionCloseSource parameter, which CloseConnection does not take. Thus the parameter was removed from OnUnrecoverableError. This is OK since all of the calls to OnUnrecoverableError specified FROM_SELF as the source. CloseConnection uses FROM_SELF as the source (unless the error code is a stateless reject or public reset).
gfe-relnote: No flag protection as it is only moving existing functionality around.
PiperOrigin-RevId: 250341745
Change-Id: Iafe499eda682f3db678d0eddbf7e2e3e4367cebd
diff --git a/quic/core/quic_packet_creator.h b/quic/core/quic_packet_creator.h
index 06acfbe..c9e31ac 100644
--- a/quic/core/quic_packet_creator.h
+++ b/quic/core/quic_packet_creator.h
@@ -41,8 +41,7 @@
// Called when an unrecoverable error is encountered.
virtual void OnUnrecoverableError(QuicErrorCode error,
- const std::string& error_details,
- ConnectionCloseSource source) = 0;
+ const std::string& error_details) = 0;
};
// Interface which gets callbacks from the QuicPacketCreator at interesting