Kernel: When receiving unexpected TCP flags, print the flags

It'll be easier to understand what might be happening if we know which
unexpected flags are actually showing up. :^)
This commit is contained in:
Andreas Kling 2022-03-17 15:28:56 +01:00
parent f0dde1cee1
commit 6625edb5d2

View file

@ -435,11 +435,11 @@ void handle_tcp(IPv4Packet const& ipv4_packet, Time const& packet_timestamp)
switch (socket->state()) {
case TCPSocket::State::Closed:
dbgln("handle_tcp: unexpected flags in Closed state");
dbgln("handle_tcp: unexpected flags in Closed state ({:x})", tcp_packet.flags());
// TODO: we may want to send an RST here, maybe as a configurable option
return;
case TCPSocket::State::TimeWait:
dbgln("handle_tcp: unexpected flags in TimeWait state");
dbgln("handle_tcp: unexpected flags in TimeWait state ({:x})", tcp_packet.flags());
(void)socket->send_tcp_packet(TCPFlags::RST);
socket->set_state(TCPSocket::State::Closed);
return;