diff options
author | Alessio Balsini <balsini@android.com> | 2021-01-25 15:30:51 +0000 |
---|---|---|
committer | Miklos Szeredi <mszeredi@redhat.com> | 2021-03-16 15:20:16 +0100 |
commit | f8425c9396639cc462bcce44b1051f8b4e62fddb (patch) | |
tree | 69f35483555a347f8fb83e31f6ca8ebb8809fb30 /include | |
parent | 3f9b9efd82a84f27e95d0414f852caf1fa839e83 (diff) |
fuse: 32-bit user space ioctl compat for fuse device
With a 64-bit kernel build the FUSE device cannot handle ioctl requests
coming from 32-bit user space. This is due to the ioctl command
translation that generates different command identifiers that thus cannot
be used for direct comparisons without proper manipulation.
Explicitly extract type and number from the ioctl command to enable 32-bit
user space compatibility on 64-bit kernel builds.
Signed-off-by: Alessio Balsini <balsini@android.com>
Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/uapi/linux/fuse.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/include/uapi/linux/fuse.h b/include/uapi/linux/fuse.h index 98ca64d1beb6..54442612c48b 100644 --- a/include/uapi/linux/fuse.h +++ b/include/uapi/linux/fuse.h @@ -903,7 +903,8 @@ struct fuse_notify_retrieve_in { }; /* Device ioctls: */ -#define FUSE_DEV_IOC_CLONE _IOR(229, 0, uint32_t) +#define FUSE_DEV_IOC_MAGIC 229 +#define FUSE_DEV_IOC_CLONE _IOR(FUSE_DEV_IOC_MAGIC, 0, uint32_t) struct fuse_lseek_in { uint64_t fh; |