Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6a2892c7 authored by Connor O'Brien's avatar Connor O'Brien
Browse files

libtimeinstate: open programs read-only



We only grant system_server read access to programs, but bpf_obj_get()
unnecessarily requests write as well. Instead, use bpfFdGet to open
the programs read-only

Test: programs are successfully opened & attached
Bug: 138317993
Change-Id: Icf6478737de7ea1272b995fdc7a5bd4e8947c10d
Signed-off-by: default avatarConnor O'Brien <connoro@google.com>
parent abecf048
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -156,7 +156,7 @@ static bool initGlobals() {
static bool attachTracepointProgram(const std::string &eventType, const std::string &eventName) {
    std::string path = StringPrintf(BPF_FS_PATH "prog_time_in_state_tracepoint_%s_%s",
                                    eventType.c_str(), eventName.c_str());
    int prog_fd = bpf_obj_get(path.c_str());
    int prog_fd = bpfFdGet(path.c_str(), BPF_F_RDONLY);
    if (prog_fd < 0) return false;
    return bpf_attach_tracepoint(prog_fd, eventType.c_str(), eventName.c_str()) >= 0;
}