diff options
author | 2025-06-24 14:47:20 +0200 | |
---|---|---|
committer | 2025-07-02 09:19:56 +0200 | |
commit | 3ac9e29211fa2df5539ba0d742c8fe9fe95fdc79 (patch) | |
tree | 1c09b50cdc28a55cf593d218308a9c8a547ed9e2 /rust/pin-init/internal/src | |
parent | xfrm: always initialize offload path (diff) | |
download | wireguard-linux-3ac9e29211fa2df5539ba0d742c8fe9fe95fdc79.tar.xz wireguard-linux-3ac9e29211fa2df5539ba0d742c8fe9fe95fdc79.zip |
xfrm: Set transport header to fix UDP GRO handling
The referenced commit replaced a call to __xfrm4|6_udp_encap_rcv() with
a custom check for non-ESP markers. But what the called function also
did was setting the transport header to the ESP header. The function
that follows, esp4|6_gro_receive(), relies on that being set when it calls
xfrm_parse_spi(). We have to set the full offset as the skb's head was
not moved yet so adding just the UDP header length won't work.
Fixes: e3fd05777685 ("xfrm: Fix UDP GRO handling for some corner cases")
Signed-off-by: Tobias Brunner <tobias@strongswan.org>
Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
Diffstat (limited to 'rust/pin-init/internal/src')
0 files changed, 0 insertions, 0 deletions