On 26-Mär 12:24, Andrii Nakryiko wrote: > On Thu, Mar 26, 2020 at 7:30 AM KP Singh <kpsingh@xxxxxxxxxxxx> wrote: > > > > From: KP Singh <kpsingh@xxxxxxxxxx> > > > > * Load/attach a BPF program that hooks to file_mprotect (int) > > and bprm_committed_creds (void). > > * Perform an action that triggers the hook. > > * Verify if the audit event was received using the shared global > > variables for the process executed. > > * Verify if the mprotect returns a -EPERM. > > > > Signed-off-by: KP Singh <kpsingh@xxxxxxxxxx> > > Reviewed-by: Brendan Jackman <jackmanb@xxxxxxxxxx> > > Reviewed-by: Florent Revest <revest@xxxxxxxxxx> > > Reviewed-by: Thomas Garnier <thgarnie@xxxxxxxxxx> > > --- > > Please fix endlines below. With that: > > Acked-by: Andrii Nakryiko <andriin@xxxxxx> > > > tools/testing/selftests/bpf/config | 2 + > > .../selftests/bpf/prog_tests/test_lsm.c | 86 +++++++++++++++++++ > > tools/testing/selftests/bpf/progs/lsm.c | 48 +++++++++++ > > 3 files changed, 136 insertions(+) > > create mode 100644 tools/testing/selftests/bpf/prog_tests/test_lsm.c > > create mode 100644 tools/testing/selftests/bpf/progs/lsm.c > > > > [...] > > > +void test_test_lsm(void) > > +{ > > + struct lsm *skel = NULL; > > + int err, duration = 0; > > + > > + skel = lsm__open_and_load(); > > + if (CHECK(!skel, "skel_load", "lsm skeleton failed\n")) > > + goto close_prog; > > + > > + err = lsm__attach(skel); > > + if (CHECK(err, "attach", "lsm attach failed: %d\n", err)) > > + goto close_prog; > > + > > + err = exec_cmd(&skel->bss->monitored_pid); > > + if (CHECK(err < 0, "exec_cmd", "err %d errno %d\n", err, errno)) > > + goto close_prog; > > + > > + CHECK(skel->bss->bprm_count != 1, "bprm_count", "bprm_count = %d", > > \n is missing Done. > > > + skel->bss->bprm_count); > > + > > + skel->bss->monitored_pid = getpid(); > > + > > + err = heap_mprotect(); > > + if (CHECK(errno != EPERM, "heap_mprotect", "want errno=EPERM, got %d\n", > > + errno)) > > + goto close_prog; > > + > > + CHECK(skel->bss->mprotect_count != 1, "mprotect_count", > > + "mprotect_count = %d", skel->bss->mprotect_count); > > \n is missing Done. - KP > > > + > > +close_prog: > > + lsm__destroy(skel); > > +} > > [...]