The user_trap_syscall() helper creates a filter with
SECCOMP_RET_USER_NOTIF. To avoid confusion with SECCOMP_RET_TRAP, rename
the helper to user_notif_syscall().

Additionally fix a redundant "return" after XFAIL.

Signed-off-by: Kees Cook <keesc...@chromium.org>
---
 tools/testing/selftests/seccomp/seccomp_bpf.c | 60 +++++++++----------
 1 file changed, 29 insertions(+), 31 deletions(-)

diff --git a/tools/testing/selftests/seccomp/seccomp_bpf.c 
b/tools/testing/selftests/seccomp/seccomp_bpf.c
index 40ed846744e4..95b134933831 100644
--- a/tools/testing/selftests/seccomp/seccomp_bpf.c
+++ b/tools/testing/selftests/seccomp/seccomp_bpf.c
@@ -3110,10 +3110,8 @@ TEST(get_metadata)
        long ret;
 
        /* Only real root can get metadata. */
-       if (geteuid()) {
-               XFAIL(return, "get_metadata requires real root");
-               return;
-       }
+       if (geteuid())
+               XFAIL(return, "get_metadata test requires real root");
 
        ASSERT_EQ(0, pipe(pipefd));
 
@@ -3170,7 +3168,7 @@ TEST(get_metadata)
        ASSERT_EQ(0, kill(pid, SIGKILL));
 }
 
-static int user_trap_syscall(int nr, unsigned int flags)
+static int user_notif_syscall(int nr, unsigned int flags)
 {
        struct sock_filter filter[] = {
                BPF_STMT(BPF_LD+BPF_W+BPF_ABS,
@@ -3216,7 +3214,7 @@ TEST(user_notification_basic)
 
        /* Check that we get -ENOSYS with no listener attached */
        if (pid == 0) {
-               if (user_trap_syscall(__NR_getppid, 0) < 0)
+               if (user_notif_syscall(__NR_getppid, 0) < 0)
                        exit(1);
                ret = syscall(__NR_getppid);
                exit(ret >= 0 || errno != ENOSYS);
@@ -3233,13 +3231,13 @@ TEST(user_notification_basic)
        EXPECT_EQ(seccomp(SECCOMP_SET_MODE_FILTER, 0, &prog), 0);
 
        /* Check that the basic notification machinery works */
-       listener = user_trap_syscall(__NR_getppid,
-                                    SECCOMP_FILTER_FLAG_NEW_LISTENER);
+       listener = user_notif_syscall(__NR_getppid,
+                                     SECCOMP_FILTER_FLAG_NEW_LISTENER);
        ASSERT_GE(listener, 0);
 
        /* Installing a second listener in the chain should EBUSY */
-       EXPECT_EQ(user_trap_syscall(__NR_getppid,
-                                   SECCOMP_FILTER_FLAG_NEW_LISTENER),
+       EXPECT_EQ(user_notif_syscall(__NR_getppid,
+                                    SECCOMP_FILTER_FLAG_NEW_LISTENER),
                  -1);
        EXPECT_EQ(errno, EBUSY);
 
@@ -3303,12 +3301,12 @@ TEST(user_notification_with_tsync)
        /* these were exclusive */
        flags = SECCOMP_FILTER_FLAG_NEW_LISTENER |
                SECCOMP_FILTER_FLAG_TSYNC;
-       ASSERT_EQ(-1, user_trap_syscall(__NR_getppid, flags));
+       ASSERT_EQ(-1, user_notif_syscall(__NR_getppid, flags));
        ASSERT_EQ(EINVAL, errno);
 
        /* but now they're not */
        flags |= SECCOMP_FILTER_FLAG_TSYNC_ESRCH;
-       ret = user_trap_syscall(__NR_getppid, flags);
+       ret = user_notif_syscall(__NR_getppid, flags);
        close(ret);
        ASSERT_LE(0, ret);
 }
@@ -3326,8 +3324,8 @@ TEST(user_notification_kill_in_middle)
                TH_LOG("Kernel does not support PR_SET_NO_NEW_PRIVS!");
        }
 
-       listener = user_trap_syscall(__NR_getppid,
-                                    SECCOMP_FILTER_FLAG_NEW_LISTENER);
+       listener = user_notif_syscall(__NR_getppid,
+                                     SECCOMP_FILTER_FLAG_NEW_LISTENER);
        ASSERT_GE(listener, 0);
 
        /*
@@ -3380,8 +3378,8 @@ TEST(user_notification_signal)
 
        ASSERT_EQ(socketpair(PF_LOCAL, SOCK_SEQPACKET, 0, sk_pair), 0);
 
-       listener = user_trap_syscall(__NR_gettid,
-                                    SECCOMP_FILTER_FLAG_NEW_LISTENER);
+       listener = user_notif_syscall(__NR_gettid,
+                                     SECCOMP_FILTER_FLAG_NEW_LISTENER);
        ASSERT_GE(listener, 0);
 
        pid = fork();
@@ -3450,8 +3448,8 @@ TEST(user_notification_closed_listener)
                TH_LOG("Kernel does not support PR_SET_NO_NEW_PRIVS!");
        }
 
-       listener = user_trap_syscall(__NR_getppid,
-                                    SECCOMP_FILTER_FLAG_NEW_LISTENER);
+       listener = user_notif_syscall(__NR_getppid,
+                                     SECCOMP_FILTER_FLAG_NEW_LISTENER);
        ASSERT_GE(listener, 0);
 
        /*
@@ -3484,8 +3482,8 @@ TEST(user_notification_child_pid_ns)
 
        ASSERT_EQ(unshare(CLONE_NEWUSER | CLONE_NEWPID), 0);
 
-       listener = user_trap_syscall(__NR_getppid,
-                                    SECCOMP_FILTER_FLAG_NEW_LISTENER);
+       listener = user_notif_syscall(__NR_getppid,
+                                     SECCOMP_FILTER_FLAG_NEW_LISTENER);
        ASSERT_GE(listener, 0);
 
        pid = fork();
@@ -3524,8 +3522,8 @@ TEST(user_notification_sibling_pid_ns)
                TH_LOG("Kernel does not support PR_SET_NO_NEW_PRIVS!");
        }
 
-       listener = user_trap_syscall(__NR_getppid,
-                                    SECCOMP_FILTER_FLAG_NEW_LISTENER);
+       listener = user_notif_syscall(__NR_getppid,
+                                     SECCOMP_FILTER_FLAG_NEW_LISTENER);
        ASSERT_GE(listener, 0);
 
        pid = fork();
@@ -3589,8 +3587,8 @@ TEST(user_notification_fault_recv)
 
        ASSERT_EQ(unshare(CLONE_NEWUSER), 0);
 
-       listener = user_trap_syscall(__NR_getppid,
-                                    SECCOMP_FILTER_FLAG_NEW_LISTENER);
+       listener = user_notif_syscall(__NR_getppid,
+                                     SECCOMP_FILTER_FLAG_NEW_LISTENER);
        ASSERT_GE(listener, 0);
 
        pid = fork();
@@ -3641,7 +3639,7 @@ TEST(user_notification_continue)
                TH_LOG("Kernel does not support PR_SET_NO_NEW_PRIVS!");
        }
 
-       listener = user_trap_syscall(__NR_dup, 
SECCOMP_FILTER_FLAG_NEW_LISTENER);
+       listener = user_notif_syscall(__NR_dup, 
SECCOMP_FILTER_FLAG_NEW_LISTENER);
        ASSERT_GE(listener, 0);
 
        pid = fork();
@@ -3736,7 +3734,7 @@ TEST(user_notification_filter_empty)
        if (pid == 0) {
                int listener;
 
-               listener = user_trap_syscall(__NR_mknod, 
SECCOMP_FILTER_FLAG_NEW_LISTENER);
+               listener = user_notif_syscall(__NR_mknod, 
SECCOMP_FILTER_FLAG_NEW_LISTENER);
                if (listener < 0)
                        _exit(EXIT_FAILURE);
 
@@ -3792,7 +3790,7 @@ TEST(user_notification_filter_empty_threaded)
                int listener, status;
                pthread_t thread;
 
-               listener = user_trap_syscall(__NR_dup, 
SECCOMP_FILTER_FLAG_NEW_LISTENER);
+               listener = user_notif_syscall(__NR_dup, 
SECCOMP_FILTER_FLAG_NEW_LISTENER);
                if (listener < 0)
                        _exit(EXIT_FAILURE);
 
@@ -3869,8 +3867,8 @@ TEST(user_notification_sendfd)
        }
 
        /* Check that the basic notification machinery works */
-       listener = user_trap_syscall(__NR_getppid,
-                                    SECCOMP_FILTER_FLAG_NEW_LISTENER);
+       listener = user_notif_syscall(__NR_getppid,
+                                     SECCOMP_FILTER_FLAG_NEW_LISTENER);
        ASSERT_GE(listener, 0);
 
        pid = fork();
@@ -3993,8 +3991,8 @@ TEST(user_notification_sendfd_rlimit)
        }
 
        /* Check that the basic notification machinery works */
-       listener = user_trap_syscall(__NR_getppid,
-                                    SECCOMP_FILTER_FLAG_NEW_LISTENER);
+       listener = user_notif_syscall(__NR_getppid,
+                                     SECCOMP_FILTER_FLAG_NEW_LISTENER);
        ASSERT_GE(listener, 0);
 
        pid = fork();
-- 
2.25.1

Reply via email to