mirror of
https://github.com/RGBCube/serenity
synced 2025-05-20 13:55:08 +00:00
IPv4: Don't ACK empty TCP packets
Wireshark was complaining about duplicate ACK's and this was why.
This commit is contained in:
parent
48f13f2a81
commit
1037a1d2ba
1 changed files with 3 additions and 6 deletions
|
@ -617,12 +617,9 @@ void handle_tcp(const IPv4Packet& ipv4_packet)
|
|||
socket->sequence_number());
|
||||
#endif
|
||||
|
||||
bool should_ack = true;
|
||||
if (payload_size != 0) {
|
||||
should_ack = socket->did_receive(ipv4_packet.source(), tcp_packet.source_port(), KBuffer::copy(&ipv4_packet, sizeof(IPv4Packet) + ipv4_packet.payload_size()));
|
||||
if (payload_size) {
|
||||
if (socket->did_receive(ipv4_packet.source(), tcp_packet.source_port(), KBuffer::copy(&ipv4_packet, sizeof(IPv4Packet) + ipv4_packet.payload_size())))
|
||||
socket->send_tcp_packet(TCPFlags::ACK);
|
||||
}
|
||||
|
||||
if (should_ack)
|
||||
socket->send_tcp_packet(TCPFlags::ACK);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue