diff options
author | Andrey Ignatov <rdna@fb.com> | 2018-11-09 13:54:01 -0500 |
---|---|---|
committer | Alexei Starovoitov <ast@kernel.org> | 2018-11-16 20:54:29 -0500 |
commit | 6c49e65e0d462963b4fac97ebd87014342167027 (patch) | |
tree | 849fe73b6599a012d371d6dcf792877cd7953f7a /tools/bpf/bpftool/prog.c | |
parent | cac6cc2f5ac710334ae0f6bba5630d791c253574 (diff) |
bpf: Support socket lookup in CGROUP_SOCK_ADDR progs
Make bpf_sk_lookup_tcp, bpf_sk_lookup_udp and bpf_sk_release helpers
available in programs of type BPF_PROG_TYPE_CGROUP_SOCK_ADDR.
Such programs operate on sockets and have access to socket and struct
sockaddr passed by user to system calls such as sys_bind, sys_connect,
sys_sendmsg.
It's useful to be able to lookup other sockets from these programs.
E.g. sys_connect may lookup IP:port endpoint and if there is a server
socket bound to that endpoint ("server" can be defined by saddr & sport
being zero), redirect client connection to it by rewriting IP:port in
sockaddr passed to sys_connect.
Signed-off-by: Andrey Ignatov <rdna@fb.com>
Acked-by: Alexei Starovoitov <ast@kernel.org>
Acked-by: Martin KaFai Lau <kafai@fb.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Diffstat (limited to 'tools/bpf/bpftool/prog.c')
0 files changed, 0 insertions, 0 deletions