1
0
mirror of https://passt.top/passt synced 2024-06-30 23:12:39 +00:00
passt implements a translation layer between a Layer-2 network interface and native Layer-4 sockets (TCP, UDP, ICMP/ICMPv6 echo) on a host. It doesn't require any capabilities or privileges, and it can be used as a simple replacement for Slirp.
Go to file
Stefano Brivio 4f675d63e8 tcp: Ignore out-of-order ACKs from tap instead of resetting connection
We might receive out-of-order ACK packets from the tap device, just
like any other packet.

I guess I've been overcautious and regarded it as a condition we
can't recover from, but all that happens is that we have already seen
a higher ACK sequence number, which means that data has been already
received and discarded from the buffer. We have to ignore the lower
sequence number we receive later, though, because that would force
the buffer bookkeeping into throwing away more data than expected.

Drop the ACK sequence assignment from tcp_tap_handler(), which was
redundant, and let tcp_sock_consume() take exclusive care of that.

Now that tcp_sock_consume() can never fail, make it a void, and
drop checks from callers.

Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
2021-03-17 10:57:39 +01:00
doc passt: Assorted fixes from "fresh eyes" review 2021-02-21 11:55:49 +01:00
arp.c passt: Assorted fixes from "fresh eyes" review 2021-02-21 11:55:49 +01:00
arp.h passt: Assorted fixes from "fresh eyes" review 2021-02-21 11:55:49 +01:00
dhcp.c passt: Assorted fixes from "fresh eyes" review 2021-02-21 11:55:49 +01:00
dhcp.h passt: Assorted fixes from "fresh eyes" review 2021-02-21 11:55:49 +01:00
Makefile tcp: Add siphash implementation for initial sequence numbers 2021-03-17 10:57:36 +01:00
ndp.c passt: Assorted fixes from "fresh eyes" review 2021-02-21 11:55:49 +01:00
ndp.h passt: Assorted fixes from "fresh eyes" review 2021-02-21 11:55:49 +01:00
passt.c passt: Assorted fixes from "fresh eyes" review 2021-02-21 11:55:49 +01:00
passt.h passt: New design and implementation with native Layer 4 sockets 2021-02-16 09:28:55 +01:00
qrap.c passt: New design and implementation with native Layer 4 sockets 2021-02-16 09:28:55 +01:00
siphash.c tcp: Add siphash implementation for initial sequence numbers 2021-03-17 10:57:36 +01:00
siphash.h tcp: Add siphash implementation for initial sequence numbers 2021-03-17 10:57:36 +01:00
tap.c passt: New design and implementation with native Layer 4 sockets 2021-02-16 09:28:55 +01:00
tap.h passt: New design and implementation with native Layer 4 sockets 2021-02-16 09:28:55 +01:00
tcp.c tcp: Ignore out-of-order ACKs from tap instead of resetting connection 2021-03-17 10:57:39 +01:00
tcp.h passt: Assorted fixes from "fresh eyes" review 2021-02-21 11:55:49 +01:00
udp.c passt: Assorted fixes from "fresh eyes" review 2021-02-21 11:55:49 +01:00
udp.h passt: New design and implementation with native Layer 4 sockets 2021-02-16 09:28:55 +01:00
util.c passt: Assorted fixes from "fresh eyes" review 2021-02-21 11:55:49 +01:00
util.h passt: New design and implementation with native Layer 4 sockets 2021-02-16 09:28:55 +01:00