libbpf: Support cgroup_skb/{e,in}gress section names
authorAndrey Ignatov <rdna@fb.com>
Wed, 26 Sep 2018 22:24:54 +0000 (15:24 -0700)
committerDaniel Borkmann <daniel@iogearbox.net>
Thu, 27 Sep 2018 19:14:59 +0000 (21:14 +0200)
Add section names for BPF_CGROUP_INET_INGRESS and BPF_CGROUP_INET_EGRESS
attach types to be able to identify them in libbpf_attach_type_by_name.

"cgroup_skb" is used instead of "cgroup/skb" mostly to easy possible
unifying of how libbpf and bpftool works with section names:
* bpftool uses "cgroup_skb" to in "prog list" sub-command;
* bpftool uses "ingress" and "egress" in "cgroup list" sub-command;
* having two parts instead of three in a string like "cgroup_skb/ingress"
  can be leveraged to split it to prog_type part and attach_type part,
  or vise versa: use two parts to make a section name.

Signed-off-by: Andrey Ignatov <rdna@fb.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
tools/lib/bpf/libbpf.c

index 59e589a64d5cb368b029062a3f244d7470e383e4..51edf6cd390ed5e39c0c747b65018f5975e19052 100644 (file)
@@ -2124,6 +2124,10 @@ static const struct {
        BPF_PROG_SEC("lwt_out",                 BPF_PROG_TYPE_LWT_OUT),
        BPF_PROG_SEC("lwt_xmit",                BPF_PROG_TYPE_LWT_XMIT),
        BPF_PROG_SEC("lwt_seg6local",           BPF_PROG_TYPE_LWT_SEG6LOCAL),
+       BPF_APROG_SEC("cgroup_skb/ingress",     BPF_PROG_TYPE_CGROUP_SKB,
+                                               BPF_CGROUP_INET_INGRESS),
+       BPF_APROG_SEC("cgroup_skb/egress",      BPF_PROG_TYPE_CGROUP_SKB,
+                                               BPF_CGROUP_INET_EGRESS),
        BPF_APROG_COMPAT("cgroup/skb",          BPF_PROG_TYPE_CGROUP_SKB),
        BPF_APROG_SEC("cgroup/sock",            BPF_PROG_TYPE_CGROUP_SOCK,
                                                BPF_CGROUP_INET_SOCK_CREATE),