]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/commitdiff
bpf: sync bpf.h uapi with tools/
authorPetar Penkov <ppenkov@google.com>
Fri, 14 Sep 2018 14:46:19 +0000 (07:46 -0700)
committerAlexei Starovoitov <ast@kernel.org>
Fri, 14 Sep 2018 19:04:33 +0000 (12:04 -0700)
This patch syncs tools/include/uapi/linux/bpf.h with the flow dissector
definitions from include/uapi/linux/bpf.h

Signed-off-by: Petar Penkov <ppenkov@google.com>
Signed-off-by: Willem de Bruijn <willemb@google.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
tools/include/uapi/linux/bpf.h

index 66917a4eba2716ebdef75a78e854f4e9874c88b9..aa5ccd2385ed196c817cb00fb32db55e799af234 100644 (file)
@@ -152,6 +152,7 @@ enum bpf_prog_type {
        BPF_PROG_TYPE_LWT_SEG6LOCAL,
        BPF_PROG_TYPE_LIRC_MODE2,
        BPF_PROG_TYPE_SK_REUSEPORT,
+       BPF_PROG_TYPE_FLOW_DISSECTOR,
 };
 
 enum bpf_attach_type {
@@ -172,6 +173,7 @@ enum bpf_attach_type {
        BPF_CGROUP_UDP4_SENDMSG,
        BPF_CGROUP_UDP6_SENDMSG,
        BPF_LIRC_MODE2,
+       BPF_FLOW_DISSECTOR,
        __MAX_BPF_ATTACH_TYPE
 };
 
@@ -2333,6 +2335,7 @@ struct __sk_buff {
        /* ... here. */
 
        __u32 data_meta;
+       struct bpf_flow_keys *flow_keys;
 };
 
 struct bpf_tunnel_key {
@@ -2778,4 +2781,27 @@ enum bpf_task_fd_type {
        BPF_FD_TYPE_URETPROBE,          /* filename + offset */
 };
 
+struct bpf_flow_keys {
+       __u16   nhoff;
+       __u16   thoff;
+       __u16   addr_proto;                     /* ETH_P_* of valid addrs */
+       __u8    is_frag;
+       __u8    is_first_frag;
+       __u8    is_encap;
+       __u8    ip_proto;
+       __be16  n_proto;
+       __be16  sport;
+       __be16  dport;
+       union {
+               struct {
+                       __be32  ipv4_src;
+                       __be32  ipv4_dst;
+               };
+               struct {
+                       __u32   ipv6_src[4];    /* in6_addr; network order */
+                       __u32   ipv6_dst[4];    /* in6_addr; network order */
+               };
+       };
+};
+
 #endif /* _UAPI__LINUX_BPF_H__ */