aboutsummaryrefslogtreecommitdiffstats
path: root/tools/testing/selftests/bpf/prog_tests/tcp_custom_syncookie.c
diff options
context:
space:
mode:
authorKuniyuki Iwashima <[email protected]>2024-01-15 20:55:12 +0000
committerAlexei Starovoitov <[email protected]>2024-01-23 22:40:24 +0000
commit695751e31a63efd2bbe6779873adf1e4deb00cd5 (patch)
tree41904868bb6f47e98aa75ab19e148d03c52514a2 /tools/testing/selftests/bpf/prog_tests/tcp_custom_syncookie.c
parentbpf: tcp: Handle BPF SYN Cookie in skb_steal_sock(). (diff)
downloadkernel-695751e31a63efd2bbe6779873adf1e4deb00cd5.tar.gz
kernel-695751e31a63efd2bbe6779873adf1e4deb00cd5.zip
bpf: tcp: Handle BPF SYN Cookie in cookie_v[46]_check().
We will support arbitrary SYN Cookie with BPF in the following patch. If BPF prog validates ACK and kfunc allocates a reqsk, it will be carried to cookie_[46]_check() as skb->sk. If skb->sk is not NULL, we call cookie_bpf_check(). Then, we clear skb->sk and skb->destructor, which are needed not to hold refcnt for reqsk and the listener. See the following patch for details. After that, we finish initialisation for the remaining fields with cookie_tcp_reqsk_init(). Note that the server side WScale is set only for non-BPF SYN Cookie. Signed-off-by: Kuniyuki Iwashima <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Martin KaFai Lau <[email protected]> Signed-off-by: Alexei Starovoitov <[email protected]>
Diffstat (limited to 'tools/testing/selftests/bpf/prog_tests/tcp_custom_syncookie.c')
0 files changed, 0 insertions, 0 deletions