Commit e0c0840a authored by Seth Forshee's avatar Seth Forshee Committed by Shuah Khan
Browse files

selftests/seccomp: Accept any valid fd in user_notification_addfd



This test expects fds to have specific values, which works fine
when the test is run standalone. However, the kselftest runner
consumes a couple of extra fds for redirection when running
tests, so the test fails when run via kselftest.

Change the test to pass on any valid fd number.

Signed-off-by: default avatarSeth Forshee <seth.forshee@canonical.com>
Acked-by: default avatarShuah Khan <skhan@linuxfoundation.org>
Acked-by: default avatarKees Cook <keescook@chromium.org>
Signed-off-by: default avatarShuah Khan <skhan@linuxfoundation.org>
parent 1602a31d
Loading
Loading
Loading
Loading
+2 −6
Original line number Diff line number Diff line
@@ -4019,18 +4019,14 @@ TEST(user_notification_addfd)

	/* Verify we can set an arbitrary remote fd */
	fd = ioctl(listener, SECCOMP_IOCTL_NOTIF_ADDFD, &addfd);
	/*
	 * The child has fds 0(stdin), 1(stdout), 2(stderr), 3(memfd),
	 * 4(listener), so the newly allocated fd should be 5.
	 */
	EXPECT_EQ(fd, 5);
	EXPECT_GE(fd, 0);
	EXPECT_EQ(filecmp(getpid(), pid, memfd, fd), 0);

	/* Verify we can set an arbitrary remote fd with large size */
	memset(&big, 0x0, sizeof(big));
	big.addfd = addfd;
	fd = ioctl(listener, SECCOMP_IOCTL_NOTIF_ADDFD_BIG, &big);
	EXPECT_EQ(fd, 6);
	EXPECT_GE(fd, 0);

	/* Verify we can set a specific remote fd */
	addfd.newfd = 42;