bpf: Move skb->len == 0 checks into __bpf_redirect
authorStanislav Fomichev <sdf@google.com>
Mon, 21 Nov 2022 18:03:39 +0000 (10:03 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 31 Dec 2022 12:14:11 +0000 (13:14 +0100)
commit0fc4280dbec36ab10d2f9b3be96d297d5243f2ca
treefcee20b0aaa71f7ec25733550b88a70d3679e318
parent8dbcb4c284bcb198847b9f5fa56143dc9f3d8ffb
bpf: Move skb->len == 0 checks into __bpf_redirect

[ Upstream commit 114039b342014680911c35bd6b72624180fd669a ]

To avoid potentially breaking existing users.

Both mac/no-mac cases have to be amended; mac_header >= network_header
is not enough (verified with a new test, see next patch).

Fixes: fd1894224407 ("bpf: Don't redirect packets with invalid pkt_len")
Signed-off-by: Stanislav Fomichev <sdf@google.com>
Link: https://lore.kernel.org/r/20221121180340.1983627-1-sdf@google.com
Signed-off-by: Martin KaFai Lau <martin.lau@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/bpf/test_run.c
net/core/filter.c