On Wed, Apr 24, 2019 at 4:14 PM Ian Abbott <abbotti@xxxxxxxxx> wrote: > > Currently, a CUSE server running on a 64-bit kernel can tell when an > ioctl request comes from a process running a 32-bit ABI, but cannot tell > whether the requesting process is using legacy IA32 emulation or x32 > ABI. In particular, the server does not know the size of the client > process's `time_t` type. > > For 64-bit kernels, the `FUSE_IOCTL_COMPAT` and `FUSE_IOCTL_32BIT` flags > are currently set in the ioctl input request (`struct fuse_ioctl_in` > member `flags`) for a 32-bit requesting process. This patch defines a > new flag `FUSE_IOCTL_COMPAT_X32` and sets it if the 32-bit requesting > process is using the x32 ABI. This allows the server process to > distinguish between requests from requesting client processes using IA32 > emulation or the x32 ABI and so infer the size of the client process's > `time_t` type and any other IA32/x32 differences. Thanks, applied. Miklos