NetBpfLoad: make loadObject() return bool

Test: TreeHugger
Flag: EXEMPT mainline/noop
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: Ie996de3fba55f8ddfdc46d20161a87ad9194bf73
This commit is contained in:
Maciej Żenczykowski 2025-08-04 14:00:30 -07:00
commit 0e53637637

View file

@ -1438,29 +1438,27 @@ static bool exists(const char* const path) {
abort(); // can only hit this if permissions (likely selinux) are screwed up
}
static int loadObject(const unsigned int bpfloader_ver,
static bool loadObject(const unsigned int bpfloader_ver,
const char* const progPath, const bool useLibbpf = false) {
int ret = useLibbpf ? loadProgByLibbpf(progPath, bpfloader_ver) :
loadProg(progPath, bpfloader_ver);
if (ret) {
ALOGE("Failed to load object: %s, ret: %s, libbpf: %d",
progPath, std::strerror(-ret), useLibbpf);
return 1;
if (useLibbpf ? loadProgByLibbpf(progPath, bpfloader_ver) :
loadProg(progPath, bpfloader_ver)) {
ALOGE("Failed to load object: %s, libbpf: %d", progPath, useLibbpf);
return false;
}
ALOGD("Loaded object: %s, libbpf: %d", progPath, useLibbpf);
return 0;
return true;
}
#define APEXROOT "/apex/com.android.tethering"
#define BPFROOT APEXROOT "/etc/bpf/mainline/"
static bool loadAllObjects(const unsigned int bpfloader_ver) {
if (loadObject(bpfloader_ver, BPFROOT "offload.o")) return false;
if (loadObject(bpfloader_ver, BPFROOT "test.o", isAtLeast25Q3)) return false;
if (!loadObject(bpfloader_ver, BPFROOT "offload.o")) return false;
if (!loadObject(bpfloader_ver, BPFROOT "test.o", isAtLeast25Q3)) return false;
if (isAtLeastT) {
if (loadObject(bpfloader_ver, BPFROOT "clatd.o", isAtLeast25Q3)) return false;
if (loadObject(bpfloader_ver, BPFROOT "dscpPolicy.o", isAtLeast25Q3)) return false;
if (loadObject(bpfloader_ver, BPFROOT "netd.o", isAtLeast25Q3)) return false;
if (!loadObject(bpfloader_ver, BPFROOT "clatd.o", isAtLeast25Q3)) return false;
if (!loadObject(bpfloader_ver, BPFROOT "dscpPolicy.o", isAtLeast25Q3)) return false;
if (!loadObject(bpfloader_ver, BPFROOT "netd.o", isAtLeast25Q3)) return false;
}
return true;
}