Merge "Fix wrong nla_type for matchall"
diff --git a/common/native/bpf_headers/Android.bp b/common/native/bpf_headers/Android.bp
index 834ef02..4c8e728 100644
--- a/common/native/bpf_headers/Android.bp
+++ b/common/native/bpf_headers/Android.bp
@@ -35,29 +35,6 @@
"com.android.tethering",
"com.android.art.debug",
],
- visibility: [
- "//bootable/libbootloader/vts",
- "//cts/tests/tests/net/native",
- "//frameworks/base/services/core/jni",
- "//frameworks/native/libs/cputimeinstate",
- "//frameworks/native/services/gpuservice",
- "//frameworks/native/services/gpuservice/gpumem",
- "//frameworks/native/services/gpuservice/tests/unittests",
- "//frameworks/native/services/gpuservice/tracing",
- "//packages/modules/Connectivity/bpf_progs",
- "//packages/modules/Connectivity/netd",
- "//packages/modules/Connectivity/service/native",
- "//packages/modules/Connectivity/service/native/libs/libclat",
- "//packages/modules/Connectivity/tests/unit/jni",
- "//packages/modules/DnsResolver/tests",
- "//system/bpf/bpfloader",
- "//system/bpf/libbpf_android",
- "//system/memory/libmeminfo",
- "//system/netd/server",
- "//system/netd/tests",
- "//system/netd/tests/benchmarks",
- "//test/vts-testcase/kernel/api/bpf_native_test",
- ],
}
@@ -73,9 +50,9 @@
"-Werror",
"-Wno-error=unused-variable",
],
+ header_libs: ["bpf_headers"],
static_libs: ["libgmock"],
shared_libs: [
- "libbpf_android",
"libbase",
"liblog",
"libutils",
diff --git a/common/native/bpf_syscall_wrappers/Android.bp b/common/native/bpf_syscall_wrappers/Android.bp
index a20eed3..f41a244 100644
--- a/common/native/bpf_syscall_wrappers/Android.bp
+++ b/common/native/bpf_syscall_wrappers/Android.bp
@@ -30,20 +30,8 @@
min_sdk_version: "30",
apex_available: [
"//apex_available:platform",
+ "com.android.art.debug",
"com.android.mediaprovider",
"com.android.tethering",
],
- visibility: [
- "//frameworks/libs/net/common/native/bpf_headers",
- "//frameworks/libs/net/common/native/bpfmapjni",
- "//frameworks/libs/net/common/native/tcutils",
- "//packages/modules/Connectivity/netd",
- "//packages/modules/Connectivity/service",
- "//packages/modules/Connectivity/service/native",
- "//packages/modules/Connectivity/service/native/libs/libclat",
- "//packages/modules/Connectivity/Tethering",
- "//packages/providers/MediaProvider/jni",
- "//system/bpf/libbpf_android",
- "//system/memory/lmkd",
- ],
}
diff --git a/common/native/bpf_syscall_wrappers/include/BpfSyscallWrappers.h b/common/native/bpf_syscall_wrappers/include/BpfSyscallWrappers.h
index 72eebf3..abf83da 100644
--- a/common/native/bpf_syscall_wrappers/include/BpfSyscallWrappers.h
+++ b/common/native/bpf_syscall_wrappers/include/BpfSyscallWrappers.h
@@ -125,11 +125,12 @@
}
inline int attachProgram(bpf_attach_type type, const BPF_FD_TYPE prog_fd,
- const BPF_FD_TYPE cg_fd) {
+ const BPF_FD_TYPE cg_fd, uint32_t flags = 0) {
return bpf(BPF_PROG_ATTACH, {
.target_fd = BPF_FD_TO_U32(cg_fd),
.attach_bpf_fd = BPF_FD_TO_U32(prog_fd),
.attach_type = type,
+ .attach_flags = flags,
});
}
@@ -140,6 +141,15 @@
});
}
+inline int detachSingleProgram(bpf_attach_type type, const BPF_FD_TYPE prog_fd,
+ const BPF_FD_TYPE cg_fd) {
+ return bpf(BPF_PROG_DETACH, {
+ .target_fd = BPF_FD_TO_U32(cg_fd),
+ .attach_bpf_fd = BPF_FD_TO_U32(prog_fd),
+ .attach_type = type,
+ });
+}
+
} // namespace bpf
} // namespace android