wireguard-go/tun
Jordan Whited 052af4a807 tun: use correct IP header comparisons in tcpGRO() and tcpPacketsCanCoalesce()
tcpGRO() was using an incorrect IPv4 more fragments bit mask.

tcpPacketsCanCoalesce() was not distinguishing tcp6 from tcp4, and TTL
values were not compared. TTL values should be equal at the IP layer,
otherwise the packets should not coalesce. This tracks with the kernel.

Reviewed-by: Denton Gentry <dgentry@tailscale.com>
Signed-off-by: Jordan Whited <jordan@tailscale.com>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-25 23:13:38 +01:00
..
netstack global: remove old style build tags 2023-03-23 18:34:09 +01:00
testdata/fuzz/Fuzz_handleGRO conn, device, tun: implement vectorized I/O on Linux 2023-03-10 14:52:17 +01:00
tuntest conn, device, tun: implement vectorized I/O plumbing 2023-03-10 14:52:13 +01:00
alignment_windows_test.go global: bump copyright year 2023-02-07 20:39:29 -03:00
checksum.go conn, device, tun: implement vectorized I/O on Linux 2023-03-10 14:52:17 +01:00
errors.go tun: replace ErrorBatch() with errors.Join() 2023-03-17 15:18:04 +01:00
operateonfd.go global: bump copyright year 2023-02-07 20:39:29 -03:00
tcp_offload_linux_test.go tun: use correct IP header comparisons in tcpGRO() and tcpPacketsCanCoalesce() 2023-03-25 23:13:38 +01:00
tcp_offload_linux.go tun: use correct IP header comparisons in tcpGRO() and tcpPacketsCanCoalesce() 2023-03-25 23:13:38 +01:00
tun_darwin.go global: buff -> buf 2023-03-13 17:55:53 +01:00
tun_freebsd.go global: buff -> buf 2023-03-13 17:55:53 +01:00
tun_linux.go tun: replace ErrorBatch() with errors.Join() 2023-03-17 15:18:04 +01:00
tun_openbsd.go global: buff -> buf 2023-03-13 17:55:53 +01:00
tun_windows.go global: buff -> buf 2023-03-13 17:55:53 +01:00
tun.go global: buff -> buf 2023-03-13 17:55:53 +01:00