Skip to content

Commit

Permalink
nsfs: add compat ioctl handler
Browse files Browse the repository at this point in the history
As all parameters and return values of the ioctls have the same
representation on both 32bit and 64bit we can reuse the normal ioctl
handler for the compat handler via compat_ptr_ioctl().

All nsfs ioctls return a plain "int" filedescriptor which is a signed
4-byte integer type on both 32bit and 64bit.
The only parameter taken is by NS_GET_OWNER_UID and is a pointer to a
"uid_t" which is a 4-byte unsigned integer type on both 32bit and 64bit.

Fixes: 6786741 ("nsfs: add ioctl to get an owning user namespace for ns file descriptor")
Reported-by: Karel Zak <kzak@redhat.com>
Link: util-linux/util-linux#1924 (comment)
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
  • Loading branch information
t-8ch authored and Al Viro committed Jan 11, 2023
1 parent f27c942 commit 1cb925c
Showing 1 changed file with 1 addition and 0 deletions.
1 change: 1 addition & 0 deletions fs/nsfs.c
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ static long ns_ioctl(struct file *filp, unsigned int ioctl,
static const struct file_operations ns_file_operations = {
.llseek = no_llseek,
.unlocked_ioctl = ns_ioctl,
.compat_ioctl = compat_ptr_ioctl,
};

static char *ns_dname(struct dentry *dentry, char *buffer, int buflen)
Expand Down

0 comments on commit 1cb925c

Please sign in to comment.