From 1c44d24b76839df9c3e86e3826c2b583e6896c22 Mon Sep 17 00:00:00 2001 From: Bananymous Date: Mon, 21 Apr 2025 20:02:32 +0300 Subject: [PATCH] Kernel: Fix TCP closing state machine --- kernel/kernel/Networking/TCPSocket.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kernel/kernel/Networking/TCPSocket.cpp b/kernel/kernel/Networking/TCPSocket.cpp index 036c3f75..459d7020 100644 --- a/kernel/kernel/Networking/TCPSocket.cpp +++ b/kernel/kernel/Networking/TCPSocket.cpp @@ -531,9 +531,9 @@ namespace Kernel break; if ((header.flags & (FIN | ACK)) == (FIN | ACK)) m_next_state = State::TimeWait; - if (header.flags & FIN) + else if (header.flags & FIN) m_next_state = State::Closing; - if (header.flags & ACK) + else if (header.flags & ACK) m_state = State::FinWait2; else m_next_flags = ACK;