use unique_fd !ok() instead of == -1 am: 2582445ec7
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2625629 Change-Id: I4d61c8ce976d39659551f9f8fafc4ba1f3bc92b0 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
committed by
Automerger Merge Worker
commit
1c5387153a
@@ -52,25 +52,25 @@ static_assert(STATS_MAP_SIZE - TOTAL_UID_STATS_ENTRIES_LIMIT > 100,
|
||||
static Status attachProgramToCgroup(const char* programPath, const unique_fd& cgroupFd,
|
||||
bpf_attach_type type) {
|
||||
unique_fd cgroupProg(retrieveProgram(programPath));
|
||||
if (cgroupProg == -1) {
|
||||
int ret = errno;
|
||||
ALOGE("Failed to get program from %s: %s", programPath, strerror(ret));
|
||||
return statusFromErrno(ret, "cgroup program get failed");
|
||||
if (!cgroupProg.ok()) {
|
||||
const int err = errno;
|
||||
ALOGE("Failed to get program from %s: %s", programPath, strerror(err));
|
||||
return statusFromErrno(err, "cgroup program get failed");
|
||||
}
|
||||
if (android::bpf::attachProgram(type, cgroupProg, cgroupFd)) {
|
||||
int ret = errno;
|
||||
ALOGE("Program from %s attach failed: %s", programPath, strerror(ret));
|
||||
return statusFromErrno(ret, "program attach failed");
|
||||
const int err = errno;
|
||||
ALOGE("Program from %s attach failed: %s", programPath, strerror(err));
|
||||
return statusFromErrno(err, "program attach failed");
|
||||
}
|
||||
return netdutils::status::ok;
|
||||
}
|
||||
|
||||
static Status checkProgramAccessible(const char* programPath) {
|
||||
unique_fd prog(retrieveProgram(programPath));
|
||||
if (prog == -1) {
|
||||
int ret = errno;
|
||||
ALOGE("Failed to get program from %s: %s", programPath, strerror(ret));
|
||||
return statusFromErrno(ret, "program retrieve failed");
|
||||
if (!prog.ok()) {
|
||||
const int err = errno;
|
||||
ALOGE("Failed to get program from %s: %s", programPath, strerror(err));
|
||||
return statusFromErrno(err, "program retrieve failed");
|
||||
}
|
||||
return netdutils::status::ok;
|
||||
}
|
||||
@@ -79,10 +79,10 @@ static Status initPrograms(const char* cg2_path) {
|
||||
if (modules::sdklevel::IsAtLeastU() && !!strcmp(cg2_path, "/sys/fs/cgroup")) abort();
|
||||
|
||||
unique_fd cg_fd(open(cg2_path, O_DIRECTORY | O_RDONLY | O_CLOEXEC));
|
||||
if (cg_fd == -1) {
|
||||
const int ret = errno;
|
||||
ALOGE("Failed to open the cgroup directory: %s", strerror(ret));
|
||||
return statusFromErrno(ret, "Open the cgroup directory failed");
|
||||
if (!cg_fd.ok()) {
|
||||
const int err = errno;
|
||||
ALOGE("Failed to open the cgroup directory: %s", strerror(err));
|
||||
return statusFromErrno(err, "Open the cgroup directory failed");
|
||||
}
|
||||
RETURN_IF_NOT_OK(checkProgramAccessible(XT_BPF_ALLOWLIST_PROG_PATH));
|
||||
RETURN_IF_NOT_OK(checkProgramAccessible(XT_BPF_DENYLIST_PROG_PATH));
|
||||
|
||||
Reference in New Issue
Block a user