selftests/nsfs: add ioctl validation tests
authorChristian Brauner <brauner@kernel.org>
Wed, 19 Feb 2025 16:40:29 +0000 (17:40 +0100)
committerChristian Brauner <brauner@kernel.org>
Thu, 20 Feb 2025 08:13:52 +0000 (09:13 +0100)
Add simple tests to validate that non-nsfs ioctls are rejected.

Link: https://lore.kernel.org/r/20250219-work-nsfs-v1-2-21128d73c5e8@kernel.org
Reviewed-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Christian Brauner <brauner@kernel.org>
tools/testing/selftests/filesystems/nsfs/iterate_mntns.c

index 457cf76f3c5f368872292714b44c037968de4ad3..a3d8015897e98688f205a5aa217288ffdc3d71ce 100644 (file)
@@ -3,6 +3,8 @@
 
 #define _GNU_SOURCE
 #include <fcntl.h>
+#include <linux/auto_dev-ioctl.h>
+#include <linux/errno.h>
 #include <sched.h>
 #include <stdio.h>
 #include <string.h>
@@ -146,4 +148,16 @@ TEST_F(iterate_mount_namespaces, iterate_backward)
        }
 }
 
+TEST_F(iterate_mount_namespaces, nfs_valid_ioctl)
+{
+       ASSERT_NE(ioctl(self->fd_mnt_ns[0], AUTOFS_DEV_IOCTL_OPENMOUNT, NULL), 0);
+       ASSERT_EQ(errno, ENOTTY);
+
+       ASSERT_NE(ioctl(self->fd_mnt_ns[0], AUTOFS_DEV_IOCTL_CLOSEMOUNT, NULL), 0);
+       ASSERT_EQ(errno, ENOTTY);
+
+       ASSERT_NE(ioctl(self->fd_mnt_ns[0], AUTOFS_DEV_IOCTL_READY, NULL), 0);
+       ASSERT_EQ(errno, ENOTTY);
+}
+
 TEST_HARNESS_MAIN