Add cgroup socket bpf kernel program support
Add support for cgroup socket filter program loading in bpfloader,
and create a uid permission map to store the uids that have INTERNET
permission.
Bug: 111560570
Bug: 111560739
Test: dumpsys netd trafficcontroller
Change-Id: I658f533d302cb594d7b36d4a3a2a70e394874c33
diff --git a/libbpf_android/Loader.cpp b/libbpf_android/Loader.cpp
index d8771c1..7687cb1 100644
--- a/libbpf_android/Loader.cpp
+++ b/libbpf_android/Loader.cpp
@@ -63,14 +63,15 @@
* is the name of the program, and tracepoint is the type.
*/
sectionType sectionNameTypes[] = {
- { "kprobe", BPF_PROG_TYPE_KPROBE },
- { "tracepoint", BPF_PROG_TYPE_TRACEPOINT },
- { "skfilter", BPF_PROG_TYPE_SOCKET_FILTER },
- { "cgroupskb", BPF_PROG_TYPE_CGROUP_SKB },
- { "schedcls", BPF_PROG_TYPE_SCHED_CLS },
+ {"kprobe", BPF_PROG_TYPE_KPROBE},
+ {"tracepoint", BPF_PROG_TYPE_TRACEPOINT},
+ {"skfilter", BPF_PROG_TYPE_SOCKET_FILTER},
+ {"cgroupskb", BPF_PROG_TYPE_CGROUP_SKB},
+ {"schedcls", BPF_PROG_TYPE_SCHED_CLS},
+ {"cgroupsock", BPF_PROG_TYPE_CGROUP_SOCK},
/* End of table */
- { "END", BPF_PROG_TYPE_UNSPEC },
+ {"END", BPF_PROG_TYPE_UNSPEC},
};
typedef struct {