diff options
| author | Kuniyuki Iwashima <[email protected]> | 2024-01-15 20:55:12 +0000 |
|---|---|---|
| committer | Alexei Starovoitov <[email protected]> | 2024-01-23 22:40:24 +0000 |
| commit | 695751e31a63efd2bbe6779873adf1e4deb00cd5 (patch) | |
| tree | 41904868bb6f47e98aa75ab19e148d03c52514a2 /tools/testing/selftests/bpf/progs/test_tcp_custom_syncookie.c | |
| parent | bpf: tcp: Handle BPF SYN Cookie in skb_steal_sock(). (diff) | |
| download | kernel-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/progs/test_tcp_custom_syncookie.c')
0 files changed, 0 insertions, 0 deletions
