summaryrefslogtreecommitdiffstats
path: root/include/uapi/linux/bpf.h
diff options
context:
space:
mode:
authorLawrence Brakmo2018-01-26 01:14:09 +0100
committerAlexei Starovoitov2018-01-26 01:41:14 +0100
commitde525be2ca2734865d29c4b67ddd29913b214906 (patch)
tree85e7a4d4b7c45de053c1d9528c1849d65252edfa /include/uapi/linux/bpf.h
parentbpf: Add write access to tcp_sock and sock fields (diff)
downloadkernel-qcow2-linux-de525be2ca2734865d29c4b67ddd29913b214906.tar.gz
kernel-qcow2-linux-de525be2ca2734865d29c4b67ddd29913b214906.tar.xz
kernel-qcow2-linux-de525be2ca2734865d29c4b67ddd29913b214906.zip
bpf: Support passing args to sock_ops bpf function
Adds support for passing up to 4 arguments to sock_ops bpf functions. It reusues the reply union, so the bpf_sock_ops structures are not increased in size. Signed-off-by: Lawrence Brakmo <brakmo@fb.com> Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Diffstat (limited to 'include/uapi/linux/bpf.h')
-rw-r--r--include/uapi/linux/bpf.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/include/uapi/linux/bpf.h b/include/uapi/linux/bpf.h
index 406c19d6016b..8d5874c2c4ff 100644
--- a/include/uapi/linux/bpf.h
+++ b/include/uapi/linux/bpf.h
@@ -952,8 +952,9 @@ struct bpf_map_info {
struct bpf_sock_ops {
__u32 op;
union {
- __u32 reply;
- __u32 replylong[4];
+ __u32 args[4]; /* Optionally passed to bpf program */
+ __u32 reply; /* Returned by bpf program */
+ __u32 replylong[4]; /* Optionally returned by bpf prog */
};
__u32 family;
__u32 remote_ip4; /* Stored in network byte order */