mirror of
https://github.com/RGBCube/serenity
synced 2025-05-14 07:44:59 +00:00
Kernet/Net: Close a TCP connection using FIN|ACK instead of just FIN
When initiating a connection termination, the FIN should be sent with a ACK from the last received segment even if that ACK already been sent.
This commit is contained in:
parent
d33b99dd24
commit
55faff80df
1 changed files with 1 additions and 1 deletions
|
@ -534,7 +534,7 @@ void TCPSocket::shut_down_for_writing()
|
|||
{
|
||||
if (state() == State::Established) {
|
||||
dbgln_if(TCP_SOCKET_DEBUG, " Sending FIN from Established and moving into FinWait1");
|
||||
(void)send_tcp_packet(TCPFlags::FIN);
|
||||
(void)send_tcp_packet(TCPFlags::FIN | TCPFlags::ACK);
|
||||
set_state(State::FinWait1);
|
||||
} else {
|
||||
dbgln(" Shutting down TCPSocket for writing but not moving to FinWait1 since state is {}", to_string(state()));
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue