amneziawg-go/conn
Jason A. Donenfeld 99f2e6d66f
conn: don't enable GRO on Linux < 5.12
Kernels below 5.12 are missing this:

    commit 98184612aca0a9ee42b8eb0262a49900ee9eef0d
    Author: Norman Maurer <norman_maurer@apple.com>
    Date:   Thu Apr 1 08:59:17 2021

        net: udp: Add support for getsockopt(..., ..., UDP_GRO, ..., ...);

        Support for UDP_GRO was added in the past but the implementation for
        getsockopt was missed which did lead to an error when we tried to
        retrieve the setting for UDP_GRO. This patch adds the missing switch
        case for UDP_GRO

        Fixes: e20cf8d3f1f7 ("udp: implement GRO for plain UDP sockets.")
        Signed-off-by: Norman Maurer <norman_maurer@apple.com>
        Reviewed-by: David Ahern <dsahern@kernel.org>
        Signed-off-by: David S. Miller <davem@davemloft.net>

That means we can't set the option and then read it back later. Given
how buggy UDP_GRO is in general on odd kernels, just disable it on older
kernels all together.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2025-06-23 14:56:43 -06:00
..
bindtest global: bump copyright notice 2025-06-23 14:20:32 -06:00
winrio global: bump copyright notice 2025-06-23 14:20:32 -06:00
bind_std.go global: bump copyright notice 2025-06-23 14:20:32 -06:00
bind_std_test.go conn, device: use UDP GSO and GRO on Linux 2023-10-10 15:07:36 +02:00
bind_windows.go global: bump copyright notice 2025-06-23 14:20:32 -06:00
boundif_android.go global: bump copyright notice 2025-06-23 14:20:32 -06:00
conn.go global: bump copyright notice 2025-06-23 14:20:32 -06:00
conn_test.go global: bump copyright notice 2025-06-23 14:20:32 -06:00
controlfns.go global: bump copyright notice 2025-06-23 14:20:32 -06:00
controlfns_linux.go conn: don't enable GRO on Linux < 5.12 2025-06-23 14:56:43 -06:00
controlfns_unix.go global: bump copyright notice 2025-06-23 14:20:32 -06:00
controlfns_windows.go global: bump copyright notice 2025-06-23 14:20:32 -06:00
default.go global: bump copyright notice 2025-06-23 14:20:32 -06:00
errors_default.go global: replaced unused function params with _ 2025-06-23 14:26:55 -06:00
errors_linux.go global: bump copyright notice 2025-06-23 14:20:32 -06:00
features_default.go global: replaced unused function params with _ 2025-06-23 14:26:55 -06:00
features_linux.go global: bump copyright notice 2025-06-23 14:20:32 -06:00
gso_default.go global: bump copyright notice 2025-06-23 14:20:32 -06:00
gso_linux.go global: bump copyright notice 2025-06-23 14:20:32 -06:00
mark_default.go global: bump copyright notice 2025-06-23 14:20:32 -06:00
mark_unix.go global: bump copyright notice 2025-06-23 14:20:32 -06:00
sticky_default.go global: bump copyright notice 2025-06-23 14:20:32 -06:00
sticky_linux.go global: bump copyright notice 2025-06-23 14:20:32 -06:00
sticky_linux_test.go global: bump copyright notice 2025-06-23 14:20:32 -06:00