bpf: Test BPF_PROG_TYPE_SK_REUSEPORT
authorMartin KaFai Lau <kafai@fb.com>
Wed, 8 Aug 2018 08:01:31 +0000 (01:01 -0700)
committerDaniel Borkmann <daniel@iogearbox.net>
Fri, 10 Aug 2018 23:58:46 +0000 (01:58 +0200)
commit91134d849a0e8fbc70b8607d280e0d325dcaf7bb
tree4bc949c2a15c2c0d1cdbb390740f508fe7644623
parent6bc8529c414f931ce0acef3099b015cf2f5c4291
bpf: Test BPF_PROG_TYPE_SK_REUSEPORT

This patch add tests for the new BPF_PROG_TYPE_SK_REUSEPORT.

The tests cover:
- IPv4/IPv6 + TCP/UDP
- TCP syncookie
- TCP fastopen
- Cases when the bpf_sk_select_reuseport() returning errors
- Cases when the bpf prog returns SK_DROP
- Values from sk_reuseport_md
- outer_map => reuseport_array

The test depends on
commit 3eee1f75f2b9 ("bpf: fix bpf_skb_load_bytes_relative pkt length check")

Signed-off-by: Martin KaFai Lau <kafai@fb.com>
Acked-by: Alexei Starovoitov <ast@kernel.org>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
tools/lib/bpf/bpf.c
tools/lib/bpf/bpf.h
tools/testing/selftests/bpf/Makefile
tools/testing/selftests/bpf/bpf_helpers.h
tools/testing/selftests/bpf/test_select_reuseport.c [new file with mode: 0644]
tools/testing/selftests/bpf/test_select_reuseport_common.h [new file with mode: 0644]
tools/testing/selftests/bpf/test_select_reuseport_kern.c [new file with mode: 0644]