From: Tanner Love <redacted>
First patch extends the flow dissector BPF program type to accept
virtio-net header members.
Second patch uses this feature to add optional flow dissection in
virtio_net_hdr_to_skb(). This allows admins to define permitted
packets more strictly, for example dropping deprecated UDP_UFO
packets.
Third patch extends kselftest to cover this feature.
Tanner Love (3):
net: flow_dissector: extend bpf flow dissector support with vnet hdr
virtio_net: add optional flow dissection in virtio_net_hdr_to_skb
selftests/net: amend bpf flow dissector prog to do vnet hdr validation
drivers/net/bonding/bond_main.c | 2 +-
include/linux/bpf.h | 2 +
include/linux/skbuff.h | 35 ++-
include/linux/virtio_net.h | 25 ++-
include/uapi/linux/bpf.h | 2 +
kernel/bpf/verifier.c | 48 +++-
net/bpf/test_run.c | 2 +-
net/core/filter.c | 26 +++
net/core/flow_dissector.c | 19 +-
net/core/sysctl_net_core.c | 9 +
tools/include/uapi/linux/bpf.h | 2 +
tools/testing/selftests/bpf/progs/bpf_flow.c | 208 ++++++++++++++----
.../selftests/bpf/test_flow_dissector.c | 181 +++++++++++++--
.../selftests/bpf/test_flow_dissector.sh | 19 ++
14 files changed, 495 insertions(+), 85 deletions(-)
--
2.32.0.rc1.229.g3e70b5a671-goog