fuse_abi/
linux.rs

1/* automatically generated by rust-bindgen 0.70.1 */
2
3#[repr(transparent)]
4#[derive(Default)]
5#[cfg_attr(
6    feature = "zerocopy",
7    derive(
8        zerocopy_derive::KnownLayout,
9        zerocopy_derive::Immutable,
10        zerocopy_derive::FromBytes,
11        zerocopy_derive::IntoBytes,
12    )
13)]
14pub struct __IncompleteArrayField<T>(::core::marker::PhantomData<T>, [T; 0]);
15impl<T> __IncompleteArrayField<T> {
16    #[inline]
17    pub const fn new() -> Self {
18        __IncompleteArrayField(::core::marker::PhantomData, [])
19    }
20    #[inline]
21    pub fn as_ptr(&self) -> *const T {
22        self as *const _ as *const T
23    }
24    #[inline]
25    pub fn as_mut_ptr(&mut self) -> *mut T {
26        self as *mut _ as *mut T
27    }
28    #[inline]
29    pub unsafe fn as_slice(&self, len: usize) -> &[T] {
30        ::core::slice::from_raw_parts(self.as_ptr(), len)
31    }
32    #[inline]
33    pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] {
34        ::core::slice::from_raw_parts_mut(self.as_mut_ptr(), len)
35    }
36}
37impl<T> ::core::fmt::Debug for __IncompleteArrayField<T> {
38    fn fmt(&self, fmt: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
39        fmt.write_str("__IncompleteArrayField")
40    }
41}
42pub const FUSE_KERNEL_VERSION: u32 = 7;
43pub const FUSE_KERNEL_MINOR_VERSION: u32 = 40;
44pub const FUSE_ROOT_ID: u64 = 1;
45pub const FATTR_MODE: u32 = 1;
46pub const FATTR_UID: u32 = 2;
47pub const FATTR_GID: u32 = 4;
48pub const FATTR_SIZE: u32 = 8;
49pub const FATTR_ATIME: u32 = 16;
50pub const FATTR_MTIME: u32 = 32;
51pub const FATTR_FH: u32 = 64;
52pub const FATTR_ATIME_NOW: u32 = 128;
53pub const FATTR_MTIME_NOW: u32 = 256;
54pub const FATTR_LOCKOWNER: u32 = 512;
55pub const FATTR_CTIME: u32 = 1024;
56pub const FATTR_KILL_SUIDGID: u32 = 2048;
57pub const FOPEN_DIRECT_IO: u32 = 1;
58pub const FOPEN_KEEP_CACHE: u32 = 2;
59pub const FOPEN_NONSEEKABLE: u32 = 4;
60pub const FOPEN_CACHE_DIR: u32 = 8;
61pub const FOPEN_STREAM: u32 = 16;
62pub const FOPEN_NOFLUSH: u32 = 32;
63pub const FOPEN_PARALLEL_DIRECT_WRITES: u32 = 64;
64pub const FOPEN_PASSTHROUGH: u32 = 128;
65pub const FUSE_ASYNC_READ: u32 = 1;
66pub const FUSE_POSIX_LOCKS: u32 = 2;
67pub const FUSE_FILE_OPS: u32 = 4;
68pub const FUSE_ATOMIC_O_TRUNC: u32 = 8;
69pub const FUSE_EXPORT_SUPPORT: u32 = 16;
70pub const FUSE_BIG_WRITES: u32 = 32;
71pub const FUSE_DONT_MASK: u32 = 64;
72pub const FUSE_SPLICE_WRITE: u32 = 128;
73pub const FUSE_SPLICE_MOVE: u32 = 256;
74pub const FUSE_SPLICE_READ: u32 = 512;
75pub const FUSE_FLOCK_LOCKS: u32 = 1024;
76pub const FUSE_HAS_IOCTL_DIR: u32 = 2048;
77pub const FUSE_AUTO_INVAL_DATA: u32 = 4096;
78pub const FUSE_DO_READDIRPLUS: u32 = 8192;
79pub const FUSE_READDIRPLUS_AUTO: u32 = 16384;
80pub const FUSE_ASYNC_DIO: u32 = 32768;
81pub const FUSE_WRITEBACK_CACHE: u32 = 65536;
82pub const FUSE_NO_OPEN_SUPPORT: u32 = 131072;
83pub const FUSE_PARALLEL_DIROPS: u32 = 262144;
84pub const FUSE_HANDLE_KILLPRIV: u32 = 524288;
85pub const FUSE_POSIX_ACL: u32 = 1048576;
86pub const FUSE_ABORT_ERROR: u32 = 2097152;
87pub const FUSE_MAX_PAGES: u32 = 4194304;
88pub const FUSE_CACHE_SYMLINKS: u32 = 8388608;
89pub const FUSE_NO_OPENDIR_SUPPORT: u32 = 16777216;
90pub const FUSE_EXPLICIT_INVAL_DATA: u32 = 33554432;
91pub const FUSE_MAP_ALIGNMENT: u32 = 67108864;
92pub const FUSE_SUBMOUNTS: u32 = 134217728;
93pub const FUSE_HANDLE_KILLPRIV_V2: u32 = 268435456;
94pub const FUSE_SETXATTR_EXT: u32 = 536870912;
95pub const FUSE_INIT_EXT: u32 = 1073741824;
96pub const FUSE_INIT_RESERVED: u32 = 2147483648;
97pub const FUSE_SECURITY_CTX: u64 = 4294967296;
98pub const FUSE_HAS_INODE_DAX: u64 = 8589934592;
99pub const FUSE_CREATE_SUPP_GROUP: u64 = 17179869184;
100pub const FUSE_HAS_EXPIRE_ONLY: u64 = 34359738368;
101pub const FUSE_DIRECT_IO_ALLOW_MMAP: u64 = 68719476736;
102pub const FUSE_PASSTHROUGH: u64 = 137438953472;
103pub const FUSE_NO_EXPORT_SUPPORT: u64 = 274877906944;
104pub const FUSE_HAS_RESEND: u64 = 549755813888;
105pub const FUSE_DIRECT_IO_RELAX: u64 = 68719476736;
106pub const CUSE_UNRESTRICTED_IOCTL: u32 = 1;
107pub const FUSE_RELEASE_FLUSH: u32 = 1;
108pub const FUSE_RELEASE_FLOCK_UNLOCK: u32 = 2;
109pub const FUSE_GETATTR_FH: u32 = 1;
110pub const FUSE_LK_FLOCK: u32 = 1;
111pub const FUSE_WRITE_CACHE: u32 = 1;
112pub const FUSE_WRITE_LOCKOWNER: u32 = 2;
113pub const FUSE_WRITE_KILL_SUIDGID: u32 = 4;
114pub const FUSE_WRITE_KILL_PRIV: u32 = 4;
115pub const FUSE_READ_LOCKOWNER: u32 = 2;
116pub const FUSE_IOCTL_COMPAT: u32 = 1;
117pub const FUSE_IOCTL_UNRESTRICTED: u32 = 2;
118pub const FUSE_IOCTL_RETRY: u32 = 4;
119pub const FUSE_IOCTL_32BIT: u32 = 8;
120pub const FUSE_IOCTL_DIR: u32 = 16;
121pub const FUSE_IOCTL_COMPAT_X32: u32 = 32;
122pub const FUSE_IOCTL_MAX_IOV: u32 = 256;
123pub const FUSE_POLL_SCHEDULE_NOTIFY: u32 = 1;
124pub const FUSE_FSYNC_FDATASYNC: u32 = 1;
125pub const FUSE_ATTR_SUBMOUNT: u32 = 1;
126pub const FUSE_ATTR_DAX: u32 = 2;
127pub const FUSE_OPEN_KILL_SUIDGID: u32 = 1;
128pub const FUSE_SETXATTR_ACL_KILL_SGID: u32 = 1;
129pub const FUSE_EXPIRE_ONLY: u32 = 1;
130pub const FUSE_MIN_READ_BUFFER: u32 = 8192;
131pub const FUSE_COMPAT_ENTRY_OUT_SIZE: u32 = 120;
132pub const FUSE_COMPAT_ATTR_OUT_SIZE: u32 = 96;
133pub const FUSE_COMPAT_MKNOD_IN_SIZE: u32 = 8;
134pub const FUSE_COMPAT_WRITE_IN_SIZE: u32 = 24;
135pub const FUSE_COMPAT_STATFS_SIZE: u32 = 48;
136pub const FUSE_COMPAT_SETXATTR_IN_SIZE: u32 = 8;
137pub const FUSE_COMPAT_INIT_OUT_SIZE: u32 = 8;
138pub const FUSE_COMPAT_22_INIT_OUT_SIZE: u32 = 24;
139pub const CUSE_INIT_INFO_MAX: u32 = 4096;
140pub const FUSE_UNIQUE_RESEND: i64 = -9223372036854775808;
141pub const FUSE_DEV_IOC_MAGIC: u32 = 229;
142pub const FUSE_SETUPMAPPING_FLAG_WRITE: u32 = 1;
143pub const FUSE_SETUPMAPPING_FLAG_READ: u32 = 2;
144#[repr(C)]
145#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
146#[cfg_attr(
147    feature = "zerocopy",
148    derive(
149        zerocopy_derive::KnownLayout,
150        zerocopy_derive::Immutable,
151        zerocopy_derive::FromBytes,
152        zerocopy_derive::IntoBytes,
153    )
154)]
155pub struct fuse_attr {
156    pub ino: u64,
157    pub size: u64,
158    pub blocks: u64,
159    pub atime: u64,
160    pub mtime: u64,
161    pub ctime: u64,
162    pub atimensec: u32,
163    pub mtimensec: u32,
164    pub ctimensec: u32,
165    pub mode: u32,
166    pub nlink: u32,
167    pub uid: u32,
168    pub gid: u32,
169    pub rdev: u32,
170    pub blksize: u32,
171    pub flags: u32,
172}
173#[allow(clippy::unnecessary_operation, clippy::identity_op)]
174const _: () = {
175    ["Size of fuse_attr"][::core::mem::size_of::<fuse_attr>() - 88usize];
176    ["Alignment of fuse_attr"][::core::mem::align_of::<fuse_attr>() - 8usize];
177    ["Offset of field: fuse_attr::ino"][::core::mem::offset_of!(fuse_attr, ino) - 0usize];
178    ["Offset of field: fuse_attr::size"][::core::mem::offset_of!(fuse_attr, size) - 8usize];
179    ["Offset of field: fuse_attr::blocks"][::core::mem::offset_of!(fuse_attr, blocks) - 16usize];
180    ["Offset of field: fuse_attr::atime"][::core::mem::offset_of!(fuse_attr, atime) - 24usize];
181    ["Offset of field: fuse_attr::mtime"][::core::mem::offset_of!(fuse_attr, mtime) - 32usize];
182    ["Offset of field: fuse_attr::ctime"][::core::mem::offset_of!(fuse_attr, ctime) - 40usize];
183    ["Offset of field: fuse_attr::atimensec"]
184        [::core::mem::offset_of!(fuse_attr, atimensec) - 48usize];
185    ["Offset of field: fuse_attr::mtimensec"]
186        [::core::mem::offset_of!(fuse_attr, mtimensec) - 52usize];
187    ["Offset of field: fuse_attr::ctimensec"]
188        [::core::mem::offset_of!(fuse_attr, ctimensec) - 56usize];
189    ["Offset of field: fuse_attr::mode"][::core::mem::offset_of!(fuse_attr, mode) - 60usize];
190    ["Offset of field: fuse_attr::nlink"][::core::mem::offset_of!(fuse_attr, nlink) - 64usize];
191    ["Offset of field: fuse_attr::uid"][::core::mem::offset_of!(fuse_attr, uid) - 68usize];
192    ["Offset of field: fuse_attr::gid"][::core::mem::offset_of!(fuse_attr, gid) - 72usize];
193    ["Offset of field: fuse_attr::rdev"][::core::mem::offset_of!(fuse_attr, rdev) - 76usize];
194    ["Offset of field: fuse_attr::blksize"][::core::mem::offset_of!(fuse_attr, blksize) - 80usize];
195    ["Offset of field: fuse_attr::flags"][::core::mem::offset_of!(fuse_attr, flags) - 84usize];
196};
197#[repr(C)]
198#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
199#[cfg_attr(
200    feature = "zerocopy",
201    derive(
202        zerocopy_derive::KnownLayout,
203        zerocopy_derive::Immutable,
204        zerocopy_derive::FromBytes,
205        zerocopy_derive::IntoBytes,
206    )
207)]
208pub struct fuse_sx_time {
209    pub tv_sec: i64,
210    pub tv_nsec: u32,
211    pub __reserved: i32,
212}
213#[allow(clippy::unnecessary_operation, clippy::identity_op)]
214const _: () = {
215    ["Size of fuse_sx_time"][::core::mem::size_of::<fuse_sx_time>() - 16usize];
216    ["Alignment of fuse_sx_time"][::core::mem::align_of::<fuse_sx_time>() - 8usize];
217    ["Offset of field: fuse_sx_time::tv_sec"]
218        [::core::mem::offset_of!(fuse_sx_time, tv_sec) - 0usize];
219    ["Offset of field: fuse_sx_time::tv_nsec"]
220        [::core::mem::offset_of!(fuse_sx_time, tv_nsec) - 8usize];
221    ["Offset of field: fuse_sx_time::__reserved"]
222        [::core::mem::offset_of!(fuse_sx_time, __reserved) - 12usize];
223};
224#[repr(C)]
225#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
226#[cfg_attr(
227    feature = "zerocopy",
228    derive(
229        zerocopy_derive::KnownLayout,
230        zerocopy_derive::Immutable,
231        zerocopy_derive::FromBytes,
232        zerocopy_derive::IntoBytes,
233    )
234)]
235pub struct fuse_statx {
236    pub mask: u32,
237    pub blksize: u32,
238    pub attributes: u64,
239    pub nlink: u32,
240    pub uid: u32,
241    pub gid: u32,
242    pub mode: u16,
243    pub __spare0: [u16; 1usize],
244    pub ino: u64,
245    pub size: u64,
246    pub blocks: u64,
247    pub attributes_mask: u64,
248    pub atime: fuse_sx_time,
249    pub btime: fuse_sx_time,
250    pub ctime: fuse_sx_time,
251    pub mtime: fuse_sx_time,
252    pub rdev_major: u32,
253    pub rdev_minor: u32,
254    pub dev_major: u32,
255    pub dev_minor: u32,
256    pub __spare2: [u64; 14usize],
257}
258#[allow(clippy::unnecessary_operation, clippy::identity_op)]
259const _: () = {
260    ["Size of fuse_statx"][::core::mem::size_of::<fuse_statx>() - 256usize];
261    ["Alignment of fuse_statx"][::core::mem::align_of::<fuse_statx>() - 8usize];
262    ["Offset of field: fuse_statx::mask"][::core::mem::offset_of!(fuse_statx, mask) - 0usize];
263    ["Offset of field: fuse_statx::blksize"][::core::mem::offset_of!(fuse_statx, blksize) - 4usize];
264    ["Offset of field: fuse_statx::attributes"]
265        [::core::mem::offset_of!(fuse_statx, attributes) - 8usize];
266    ["Offset of field: fuse_statx::nlink"][::core::mem::offset_of!(fuse_statx, nlink) - 16usize];
267    ["Offset of field: fuse_statx::uid"][::core::mem::offset_of!(fuse_statx, uid) - 20usize];
268    ["Offset of field: fuse_statx::gid"][::core::mem::offset_of!(fuse_statx, gid) - 24usize];
269    ["Offset of field: fuse_statx::mode"][::core::mem::offset_of!(fuse_statx, mode) - 28usize];
270    ["Offset of field: fuse_statx::__spare0"]
271        [::core::mem::offset_of!(fuse_statx, __spare0) - 30usize];
272    ["Offset of field: fuse_statx::ino"][::core::mem::offset_of!(fuse_statx, ino) - 32usize];
273    ["Offset of field: fuse_statx::size"][::core::mem::offset_of!(fuse_statx, size) - 40usize];
274    ["Offset of field: fuse_statx::blocks"][::core::mem::offset_of!(fuse_statx, blocks) - 48usize];
275    ["Offset of field: fuse_statx::attributes_mask"]
276        [::core::mem::offset_of!(fuse_statx, attributes_mask) - 56usize];
277    ["Offset of field: fuse_statx::atime"][::core::mem::offset_of!(fuse_statx, atime) - 64usize];
278    ["Offset of field: fuse_statx::btime"][::core::mem::offset_of!(fuse_statx, btime) - 80usize];
279    ["Offset of field: fuse_statx::ctime"][::core::mem::offset_of!(fuse_statx, ctime) - 96usize];
280    ["Offset of field: fuse_statx::mtime"][::core::mem::offset_of!(fuse_statx, mtime) - 112usize];
281    ["Offset of field: fuse_statx::rdev_major"]
282        [::core::mem::offset_of!(fuse_statx, rdev_major) - 128usize];
283    ["Offset of field: fuse_statx::rdev_minor"]
284        [::core::mem::offset_of!(fuse_statx, rdev_minor) - 132usize];
285    ["Offset of field: fuse_statx::dev_major"]
286        [::core::mem::offset_of!(fuse_statx, dev_major) - 136usize];
287    ["Offset of field: fuse_statx::dev_minor"]
288        [::core::mem::offset_of!(fuse_statx, dev_minor) - 140usize];
289    ["Offset of field: fuse_statx::__spare2"]
290        [::core::mem::offset_of!(fuse_statx, __spare2) - 144usize];
291};
292#[repr(C)]
293#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
294#[cfg_attr(
295    feature = "zerocopy",
296    derive(
297        zerocopy_derive::KnownLayout,
298        zerocopy_derive::Immutable,
299        zerocopy_derive::FromBytes,
300        zerocopy_derive::IntoBytes,
301    )
302)]
303pub struct fuse_kstatfs {
304    pub blocks: u64,
305    pub bfree: u64,
306    pub bavail: u64,
307    pub files: u64,
308    pub ffree: u64,
309    pub bsize: u32,
310    pub namelen: u32,
311    pub frsize: u32,
312    pub padding: u32,
313    pub spare: [u32; 6usize],
314}
315#[allow(clippy::unnecessary_operation, clippy::identity_op)]
316const _: () = {
317    ["Size of fuse_kstatfs"][::core::mem::size_of::<fuse_kstatfs>() - 80usize];
318    ["Alignment of fuse_kstatfs"][::core::mem::align_of::<fuse_kstatfs>() - 8usize];
319    ["Offset of field: fuse_kstatfs::blocks"]
320        [::core::mem::offset_of!(fuse_kstatfs, blocks) - 0usize];
321    ["Offset of field: fuse_kstatfs::bfree"][::core::mem::offset_of!(fuse_kstatfs, bfree) - 8usize];
322    ["Offset of field: fuse_kstatfs::bavail"]
323        [::core::mem::offset_of!(fuse_kstatfs, bavail) - 16usize];
324    ["Offset of field: fuse_kstatfs::files"]
325        [::core::mem::offset_of!(fuse_kstatfs, files) - 24usize];
326    ["Offset of field: fuse_kstatfs::ffree"]
327        [::core::mem::offset_of!(fuse_kstatfs, ffree) - 32usize];
328    ["Offset of field: fuse_kstatfs::bsize"]
329        [::core::mem::offset_of!(fuse_kstatfs, bsize) - 40usize];
330    ["Offset of field: fuse_kstatfs::namelen"]
331        [::core::mem::offset_of!(fuse_kstatfs, namelen) - 44usize];
332    ["Offset of field: fuse_kstatfs::frsize"]
333        [::core::mem::offset_of!(fuse_kstatfs, frsize) - 48usize];
334    ["Offset of field: fuse_kstatfs::padding"]
335        [::core::mem::offset_of!(fuse_kstatfs, padding) - 52usize];
336    ["Offset of field: fuse_kstatfs::spare"]
337        [::core::mem::offset_of!(fuse_kstatfs, spare) - 56usize];
338};
339#[repr(C)]
340#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
341#[cfg_attr(
342    feature = "zerocopy",
343    derive(
344        zerocopy_derive::KnownLayout,
345        zerocopy_derive::Immutable,
346        zerocopy_derive::FromBytes,
347        zerocopy_derive::IntoBytes,
348    )
349)]
350pub struct fuse_file_lock {
351    pub start: u64,
352    pub end: u64,
353    pub type_: u32,
354    pub pid: u32,
355}
356#[allow(clippy::unnecessary_operation, clippy::identity_op)]
357const _: () = {
358    ["Size of fuse_file_lock"][::core::mem::size_of::<fuse_file_lock>() - 24usize];
359    ["Alignment of fuse_file_lock"][::core::mem::align_of::<fuse_file_lock>() - 8usize];
360    ["Offset of field: fuse_file_lock::start"]
361        [::core::mem::offset_of!(fuse_file_lock, start) - 0usize];
362    ["Offset of field: fuse_file_lock::end"][::core::mem::offset_of!(fuse_file_lock, end) - 8usize];
363    ["Offset of field: fuse_file_lock::type_"]
364        [::core::mem::offset_of!(fuse_file_lock, type_) - 16usize];
365    ["Offset of field: fuse_file_lock::pid"]
366        [::core::mem::offset_of!(fuse_file_lock, pid) - 20usize];
367};
368#[repr(u32)]
369#[non_exhaustive]
370/// extension type
371/// FUSE_MAX_NR_SECCTX: maximum value of &fuse_secctx_header.nr_secctx
372/// FUSE_EXT_GROUPS: &fuse_supp_groups extension
373#[cfg_attr(
374    feature = "num_enum",
375    derive(
376        num_enum::IntoPrimitive,
377        num_enum::TryFromPrimitive,
378        num_enum::UnsafeFromPrimitive,
379    )
380)]
381#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
382pub enum fuse_ext_type {
383    FUSE_MAX_NR_SECCTX = 31,
384    FUSE_EXT_GROUPS = 32,
385}
386#[repr(u32)]
387#[non_exhaustive]
388#[cfg_attr(
389    feature = "num_enum",
390    derive(
391        num_enum::IntoPrimitive,
392        num_enum::TryFromPrimitive,
393        num_enum::UnsafeFromPrimitive,
394    )
395)]
396#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
397pub enum fuse_opcode {
398    FUSE_LOOKUP = 1,
399    FUSE_FORGET = 2,
400    FUSE_GETATTR = 3,
401    FUSE_SETATTR = 4,
402    FUSE_READLINK = 5,
403    FUSE_SYMLINK = 6,
404    FUSE_MKNOD = 8,
405    FUSE_MKDIR = 9,
406    FUSE_UNLINK = 10,
407    FUSE_RMDIR = 11,
408    FUSE_RENAME = 12,
409    FUSE_LINK = 13,
410    FUSE_OPEN = 14,
411    FUSE_READ = 15,
412    FUSE_WRITE = 16,
413    FUSE_STATFS = 17,
414    FUSE_RELEASE = 18,
415    FUSE_FSYNC = 20,
416    FUSE_SETXATTR = 21,
417    FUSE_GETXATTR = 22,
418    FUSE_LISTXATTR = 23,
419    FUSE_REMOVEXATTR = 24,
420    FUSE_FLUSH = 25,
421    FUSE_INIT = 26,
422    FUSE_OPENDIR = 27,
423    FUSE_READDIR = 28,
424    FUSE_RELEASEDIR = 29,
425    FUSE_FSYNCDIR = 30,
426    FUSE_GETLK = 31,
427    FUSE_SETLK = 32,
428    FUSE_SETLKW = 33,
429    FUSE_ACCESS = 34,
430    FUSE_CREATE = 35,
431    FUSE_INTERRUPT = 36,
432    FUSE_BMAP = 37,
433    FUSE_DESTROY = 38,
434    FUSE_IOCTL = 39,
435    FUSE_POLL = 40,
436    FUSE_NOTIFY_REPLY = 41,
437    FUSE_BATCH_FORGET = 42,
438    FUSE_FALLOCATE = 43,
439    FUSE_READDIRPLUS = 44,
440    FUSE_RENAME2 = 45,
441    FUSE_LSEEK = 46,
442    FUSE_COPY_FILE_RANGE = 47,
443    FUSE_SETUPMAPPING = 48,
444    FUSE_REMOVEMAPPING = 49,
445    FUSE_SYNCFS = 50,
446    FUSE_TMPFILE = 51,
447    FUSE_STATX = 52,
448    CUSE_INIT = 4096,
449    CUSE_INIT_BSWAP_RESERVED = 1048576,
450    FUSE_INIT_BSWAP_RESERVED = 436207616,
451}
452#[repr(u32)]
453#[non_exhaustive]
454#[cfg_attr(
455    feature = "num_enum",
456    derive(
457        num_enum::IntoPrimitive,
458        num_enum::TryFromPrimitive,
459        num_enum::UnsafeFromPrimitive,
460    )
461)]
462#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
463pub enum fuse_notify_code {
464    FUSE_NOTIFY_POLL = 1,
465    FUSE_NOTIFY_INVAL_INODE = 2,
466    FUSE_NOTIFY_INVAL_ENTRY = 3,
467    FUSE_NOTIFY_STORE = 4,
468    FUSE_NOTIFY_RETRIEVE = 5,
469    FUSE_NOTIFY_DELETE = 6,
470    FUSE_NOTIFY_RESEND = 7,
471    FUSE_NOTIFY_CODE_MAX = 8,
472}
473#[repr(C)]
474#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
475#[cfg_attr(
476    feature = "zerocopy",
477    derive(
478        zerocopy_derive::KnownLayout,
479        zerocopy_derive::Immutable,
480        zerocopy_derive::FromBytes,
481        zerocopy_derive::IntoBytes,
482    )
483)]
484pub struct fuse_entry_out {
485    pub nodeid: u64,
486    pub generation: u64,
487    pub entry_valid: u64,
488    pub attr_valid: u64,
489    pub entry_valid_nsec: u32,
490    pub attr_valid_nsec: u32,
491    pub attr: fuse_attr,
492}
493#[allow(clippy::unnecessary_operation, clippy::identity_op)]
494const _: () = {
495    ["Size of fuse_entry_out"][::core::mem::size_of::<fuse_entry_out>() - 128usize];
496    ["Alignment of fuse_entry_out"][::core::mem::align_of::<fuse_entry_out>() - 8usize];
497    ["Offset of field: fuse_entry_out::nodeid"]
498        [::core::mem::offset_of!(fuse_entry_out, nodeid) - 0usize];
499    ["Offset of field: fuse_entry_out::generation"]
500        [::core::mem::offset_of!(fuse_entry_out, generation) - 8usize];
501    ["Offset of field: fuse_entry_out::entry_valid"]
502        [::core::mem::offset_of!(fuse_entry_out, entry_valid) - 16usize];
503    ["Offset of field: fuse_entry_out::attr_valid"]
504        [::core::mem::offset_of!(fuse_entry_out, attr_valid) - 24usize];
505    ["Offset of field: fuse_entry_out::entry_valid_nsec"]
506        [::core::mem::offset_of!(fuse_entry_out, entry_valid_nsec) - 32usize];
507    ["Offset of field: fuse_entry_out::attr_valid_nsec"]
508        [::core::mem::offset_of!(fuse_entry_out, attr_valid_nsec) - 36usize];
509    ["Offset of field: fuse_entry_out::attr"]
510        [::core::mem::offset_of!(fuse_entry_out, attr) - 40usize];
511};
512#[repr(C)]
513#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
514#[cfg_attr(
515    feature = "zerocopy",
516    derive(
517        zerocopy_derive::KnownLayout,
518        zerocopy_derive::Immutable,
519        zerocopy_derive::FromBytes,
520        zerocopy_derive::IntoBytes,
521    )
522)]
523pub struct fuse_forget_in {
524    pub nlookup: u64,
525}
526#[allow(clippy::unnecessary_operation, clippy::identity_op)]
527const _: () = {
528    ["Size of fuse_forget_in"][::core::mem::size_of::<fuse_forget_in>() - 8usize];
529    ["Alignment of fuse_forget_in"][::core::mem::align_of::<fuse_forget_in>() - 8usize];
530    ["Offset of field: fuse_forget_in::nlookup"]
531        [::core::mem::offset_of!(fuse_forget_in, nlookup) - 0usize];
532};
533#[repr(C)]
534#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
535#[cfg_attr(
536    feature = "zerocopy",
537    derive(
538        zerocopy_derive::KnownLayout,
539        zerocopy_derive::Immutable,
540        zerocopy_derive::FromBytes,
541        zerocopy_derive::IntoBytes,
542    )
543)]
544pub struct fuse_forget_one {
545    pub nodeid: u64,
546    pub nlookup: u64,
547}
548#[allow(clippy::unnecessary_operation, clippy::identity_op)]
549const _: () = {
550    ["Size of fuse_forget_one"][::core::mem::size_of::<fuse_forget_one>() - 16usize];
551    ["Alignment of fuse_forget_one"][::core::mem::align_of::<fuse_forget_one>() - 8usize];
552    ["Offset of field: fuse_forget_one::nodeid"]
553        [::core::mem::offset_of!(fuse_forget_one, nodeid) - 0usize];
554    ["Offset of field: fuse_forget_one::nlookup"]
555        [::core::mem::offset_of!(fuse_forget_one, nlookup) - 8usize];
556};
557#[repr(C)]
558#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
559#[cfg_attr(
560    feature = "zerocopy",
561    derive(
562        zerocopy_derive::KnownLayout,
563        zerocopy_derive::Immutable,
564        zerocopy_derive::FromBytes,
565        zerocopy_derive::IntoBytes,
566    )
567)]
568pub struct fuse_batch_forget_in {
569    pub count: u32,
570    pub dummy: u32,
571}
572#[allow(clippy::unnecessary_operation, clippy::identity_op)]
573const _: () = {
574    ["Size of fuse_batch_forget_in"][::core::mem::size_of::<fuse_batch_forget_in>() - 8usize];
575    ["Alignment of fuse_batch_forget_in"][::core::mem::align_of::<fuse_batch_forget_in>() - 4usize];
576    ["Offset of field: fuse_batch_forget_in::count"]
577        [::core::mem::offset_of!(fuse_batch_forget_in, count) - 0usize];
578    ["Offset of field: fuse_batch_forget_in::dummy"]
579        [::core::mem::offset_of!(fuse_batch_forget_in, dummy) - 4usize];
580};
581#[repr(C)]
582#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
583#[cfg_attr(
584    feature = "zerocopy",
585    derive(
586        zerocopy_derive::KnownLayout,
587        zerocopy_derive::Immutable,
588        zerocopy_derive::FromBytes,
589        zerocopy_derive::IntoBytes,
590    )
591)]
592pub struct fuse_getattr_in {
593    pub getattr_flags: u32,
594    pub dummy: u32,
595    pub fh: u64,
596}
597#[allow(clippy::unnecessary_operation, clippy::identity_op)]
598const _: () = {
599    ["Size of fuse_getattr_in"][::core::mem::size_of::<fuse_getattr_in>() - 16usize];
600    ["Alignment of fuse_getattr_in"][::core::mem::align_of::<fuse_getattr_in>() - 8usize];
601    ["Offset of field: fuse_getattr_in::getattr_flags"]
602        [::core::mem::offset_of!(fuse_getattr_in, getattr_flags) - 0usize];
603    ["Offset of field: fuse_getattr_in::dummy"]
604        [::core::mem::offset_of!(fuse_getattr_in, dummy) - 4usize];
605    ["Offset of field: fuse_getattr_in::fh"][::core::mem::offset_of!(fuse_getattr_in, fh) - 8usize];
606};
607#[repr(C)]
608#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
609#[cfg_attr(
610    feature = "zerocopy",
611    derive(
612        zerocopy_derive::KnownLayout,
613        zerocopy_derive::Immutable,
614        zerocopy_derive::FromBytes,
615        zerocopy_derive::IntoBytes,
616    )
617)]
618pub struct fuse_attr_out {
619    pub attr_valid: u64,
620    pub attr_valid_nsec: u32,
621    pub dummy: u32,
622    pub attr: fuse_attr,
623}
624#[allow(clippy::unnecessary_operation, clippy::identity_op)]
625const _: () = {
626    ["Size of fuse_attr_out"][::core::mem::size_of::<fuse_attr_out>() - 104usize];
627    ["Alignment of fuse_attr_out"][::core::mem::align_of::<fuse_attr_out>() - 8usize];
628    ["Offset of field: fuse_attr_out::attr_valid"]
629        [::core::mem::offset_of!(fuse_attr_out, attr_valid) - 0usize];
630    ["Offset of field: fuse_attr_out::attr_valid_nsec"]
631        [::core::mem::offset_of!(fuse_attr_out, attr_valid_nsec) - 8usize];
632    ["Offset of field: fuse_attr_out::dummy"]
633        [::core::mem::offset_of!(fuse_attr_out, dummy) - 12usize];
634    ["Offset of field: fuse_attr_out::attr"]
635        [::core::mem::offset_of!(fuse_attr_out, attr) - 16usize];
636};
637#[repr(C)]
638#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
639#[cfg_attr(
640    feature = "zerocopy",
641    derive(
642        zerocopy_derive::KnownLayout,
643        zerocopy_derive::Immutable,
644        zerocopy_derive::FromBytes,
645        zerocopy_derive::IntoBytes,
646    )
647)]
648pub struct fuse_statx_in {
649    pub getattr_flags: u32,
650    pub reserved: u32,
651    pub fh: u64,
652    pub sx_flags: u32,
653    pub sx_mask: u32,
654}
655#[allow(clippy::unnecessary_operation, clippy::identity_op)]
656const _: () = {
657    ["Size of fuse_statx_in"][::core::mem::size_of::<fuse_statx_in>() - 24usize];
658    ["Alignment of fuse_statx_in"][::core::mem::align_of::<fuse_statx_in>() - 8usize];
659    ["Offset of field: fuse_statx_in::getattr_flags"]
660        [::core::mem::offset_of!(fuse_statx_in, getattr_flags) - 0usize];
661    ["Offset of field: fuse_statx_in::reserved"]
662        [::core::mem::offset_of!(fuse_statx_in, reserved) - 4usize];
663    ["Offset of field: fuse_statx_in::fh"][::core::mem::offset_of!(fuse_statx_in, fh) - 8usize];
664    ["Offset of field: fuse_statx_in::sx_flags"]
665        [::core::mem::offset_of!(fuse_statx_in, sx_flags) - 16usize];
666    ["Offset of field: fuse_statx_in::sx_mask"]
667        [::core::mem::offset_of!(fuse_statx_in, sx_mask) - 20usize];
668};
669#[repr(C)]
670#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
671#[cfg_attr(
672    feature = "zerocopy",
673    derive(
674        zerocopy_derive::KnownLayout,
675        zerocopy_derive::Immutable,
676        zerocopy_derive::FromBytes,
677        zerocopy_derive::IntoBytes,
678    )
679)]
680pub struct fuse_statx_out {
681    pub attr_valid: u64,
682    pub attr_valid_nsec: u32,
683    pub flags: u32,
684    pub spare: [u64; 2usize],
685    pub stat: fuse_statx,
686}
687#[allow(clippy::unnecessary_operation, clippy::identity_op)]
688const _: () = {
689    ["Size of fuse_statx_out"][::core::mem::size_of::<fuse_statx_out>() - 288usize];
690    ["Alignment of fuse_statx_out"][::core::mem::align_of::<fuse_statx_out>() - 8usize];
691    ["Offset of field: fuse_statx_out::attr_valid"]
692        [::core::mem::offset_of!(fuse_statx_out, attr_valid) - 0usize];
693    ["Offset of field: fuse_statx_out::attr_valid_nsec"]
694        [::core::mem::offset_of!(fuse_statx_out, attr_valid_nsec) - 8usize];
695    ["Offset of field: fuse_statx_out::flags"]
696        [::core::mem::offset_of!(fuse_statx_out, flags) - 12usize];
697    ["Offset of field: fuse_statx_out::spare"]
698        [::core::mem::offset_of!(fuse_statx_out, spare) - 16usize];
699    ["Offset of field: fuse_statx_out::stat"]
700        [::core::mem::offset_of!(fuse_statx_out, stat) - 32usize];
701};
702#[repr(C)]
703#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
704#[cfg_attr(
705    feature = "zerocopy",
706    derive(
707        zerocopy_derive::KnownLayout,
708        zerocopy_derive::Immutable,
709        zerocopy_derive::FromBytes,
710        zerocopy_derive::IntoBytes,
711    )
712)]
713pub struct fuse_mknod_in {
714    pub mode: u32,
715    pub rdev: u32,
716    pub umask: u32,
717    pub padding: u32,
718}
719#[allow(clippy::unnecessary_operation, clippy::identity_op)]
720const _: () = {
721    ["Size of fuse_mknod_in"][::core::mem::size_of::<fuse_mknod_in>() - 16usize];
722    ["Alignment of fuse_mknod_in"][::core::mem::align_of::<fuse_mknod_in>() - 4usize];
723    ["Offset of field: fuse_mknod_in::mode"][::core::mem::offset_of!(fuse_mknod_in, mode) - 0usize];
724    ["Offset of field: fuse_mknod_in::rdev"][::core::mem::offset_of!(fuse_mknod_in, rdev) - 4usize];
725    ["Offset of field: fuse_mknod_in::umask"]
726        [::core::mem::offset_of!(fuse_mknod_in, umask) - 8usize];
727    ["Offset of field: fuse_mknod_in::padding"]
728        [::core::mem::offset_of!(fuse_mknod_in, padding) - 12usize];
729};
730#[repr(C)]
731#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
732#[cfg_attr(
733    feature = "zerocopy",
734    derive(
735        zerocopy_derive::KnownLayout,
736        zerocopy_derive::Immutable,
737        zerocopy_derive::FromBytes,
738        zerocopy_derive::IntoBytes,
739    )
740)]
741pub struct fuse_mkdir_in {
742    pub mode: u32,
743    pub umask: u32,
744}
745#[allow(clippy::unnecessary_operation, clippy::identity_op)]
746const _: () = {
747    ["Size of fuse_mkdir_in"][::core::mem::size_of::<fuse_mkdir_in>() - 8usize];
748    ["Alignment of fuse_mkdir_in"][::core::mem::align_of::<fuse_mkdir_in>() - 4usize];
749    ["Offset of field: fuse_mkdir_in::mode"][::core::mem::offset_of!(fuse_mkdir_in, mode) - 0usize];
750    ["Offset of field: fuse_mkdir_in::umask"]
751        [::core::mem::offset_of!(fuse_mkdir_in, umask) - 4usize];
752};
753#[repr(C)]
754#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
755#[cfg_attr(
756    feature = "zerocopy",
757    derive(
758        zerocopy_derive::KnownLayout,
759        zerocopy_derive::Immutable,
760        zerocopy_derive::FromBytes,
761        zerocopy_derive::IntoBytes,
762    )
763)]
764pub struct fuse_rename_in {
765    pub newdir: u64,
766}
767#[allow(clippy::unnecessary_operation, clippy::identity_op)]
768const _: () = {
769    ["Size of fuse_rename_in"][::core::mem::size_of::<fuse_rename_in>() - 8usize];
770    ["Alignment of fuse_rename_in"][::core::mem::align_of::<fuse_rename_in>() - 8usize];
771    ["Offset of field: fuse_rename_in::newdir"]
772        [::core::mem::offset_of!(fuse_rename_in, newdir) - 0usize];
773};
774#[repr(C)]
775#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
776#[cfg_attr(
777    feature = "zerocopy",
778    derive(
779        zerocopy_derive::KnownLayout,
780        zerocopy_derive::Immutable,
781        zerocopy_derive::FromBytes,
782        zerocopy_derive::IntoBytes,
783    )
784)]
785pub struct fuse_rename2_in {
786    pub newdir: u64,
787    pub flags: u32,
788    pub padding: u32,
789}
790#[allow(clippy::unnecessary_operation, clippy::identity_op)]
791const _: () = {
792    ["Size of fuse_rename2_in"][::core::mem::size_of::<fuse_rename2_in>() - 16usize];
793    ["Alignment of fuse_rename2_in"][::core::mem::align_of::<fuse_rename2_in>() - 8usize];
794    ["Offset of field: fuse_rename2_in::newdir"]
795        [::core::mem::offset_of!(fuse_rename2_in, newdir) - 0usize];
796    ["Offset of field: fuse_rename2_in::flags"]
797        [::core::mem::offset_of!(fuse_rename2_in, flags) - 8usize];
798    ["Offset of field: fuse_rename2_in::padding"]
799        [::core::mem::offset_of!(fuse_rename2_in, padding) - 12usize];
800};
801#[repr(C)]
802#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
803#[cfg_attr(
804    feature = "zerocopy",
805    derive(
806        zerocopy_derive::KnownLayout,
807        zerocopy_derive::Immutable,
808        zerocopy_derive::FromBytes,
809        zerocopy_derive::IntoBytes,
810    )
811)]
812pub struct fuse_link_in {
813    pub oldnodeid: u64,
814}
815#[allow(clippy::unnecessary_operation, clippy::identity_op)]
816const _: () = {
817    ["Size of fuse_link_in"][::core::mem::size_of::<fuse_link_in>() - 8usize];
818    ["Alignment of fuse_link_in"][::core::mem::align_of::<fuse_link_in>() - 8usize];
819    ["Offset of field: fuse_link_in::oldnodeid"]
820        [::core::mem::offset_of!(fuse_link_in, oldnodeid) - 0usize];
821};
822#[repr(C)]
823#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
824#[cfg_attr(
825    feature = "zerocopy",
826    derive(
827        zerocopy_derive::KnownLayout,
828        zerocopy_derive::Immutable,
829        zerocopy_derive::FromBytes,
830        zerocopy_derive::IntoBytes,
831    )
832)]
833pub struct fuse_setattr_in {
834    pub valid: u32,
835    pub padding: u32,
836    pub fh: u64,
837    pub size: u64,
838    pub lock_owner: u64,
839    pub atime: u64,
840    pub mtime: u64,
841    pub ctime: u64,
842    pub atimensec: u32,
843    pub mtimensec: u32,
844    pub ctimensec: u32,
845    pub mode: u32,
846    pub unused4: u32,
847    pub uid: u32,
848    pub gid: u32,
849    pub unused5: u32,
850}
851#[allow(clippy::unnecessary_operation, clippy::identity_op)]
852const _: () = {
853    ["Size of fuse_setattr_in"][::core::mem::size_of::<fuse_setattr_in>() - 88usize];
854    ["Alignment of fuse_setattr_in"][::core::mem::align_of::<fuse_setattr_in>() - 8usize];
855    ["Offset of field: fuse_setattr_in::valid"]
856        [::core::mem::offset_of!(fuse_setattr_in, valid) - 0usize];
857    ["Offset of field: fuse_setattr_in::padding"]
858        [::core::mem::offset_of!(fuse_setattr_in, padding) - 4usize];
859    ["Offset of field: fuse_setattr_in::fh"][::core::mem::offset_of!(fuse_setattr_in, fh) - 8usize];
860    ["Offset of field: fuse_setattr_in::size"]
861        [::core::mem::offset_of!(fuse_setattr_in, size) - 16usize];
862    ["Offset of field: fuse_setattr_in::lock_owner"]
863        [::core::mem::offset_of!(fuse_setattr_in, lock_owner) - 24usize];
864    ["Offset of field: fuse_setattr_in::atime"]
865        [::core::mem::offset_of!(fuse_setattr_in, atime) - 32usize];
866    ["Offset of field: fuse_setattr_in::mtime"]
867        [::core::mem::offset_of!(fuse_setattr_in, mtime) - 40usize];
868    ["Offset of field: fuse_setattr_in::ctime"]
869        [::core::mem::offset_of!(fuse_setattr_in, ctime) - 48usize];
870    ["Offset of field: fuse_setattr_in::atimensec"]
871        [::core::mem::offset_of!(fuse_setattr_in, atimensec) - 56usize];
872    ["Offset of field: fuse_setattr_in::mtimensec"]
873        [::core::mem::offset_of!(fuse_setattr_in, mtimensec) - 60usize];
874    ["Offset of field: fuse_setattr_in::ctimensec"]
875        [::core::mem::offset_of!(fuse_setattr_in, ctimensec) - 64usize];
876    ["Offset of field: fuse_setattr_in::mode"]
877        [::core::mem::offset_of!(fuse_setattr_in, mode) - 68usize];
878    ["Offset of field: fuse_setattr_in::unused4"]
879        [::core::mem::offset_of!(fuse_setattr_in, unused4) - 72usize];
880    ["Offset of field: fuse_setattr_in::uid"]
881        [::core::mem::offset_of!(fuse_setattr_in, uid) - 76usize];
882    ["Offset of field: fuse_setattr_in::gid"]
883        [::core::mem::offset_of!(fuse_setattr_in, gid) - 80usize];
884    ["Offset of field: fuse_setattr_in::unused5"]
885        [::core::mem::offset_of!(fuse_setattr_in, unused5) - 84usize];
886};
887#[repr(C)]
888#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
889#[cfg_attr(
890    feature = "zerocopy",
891    derive(
892        zerocopy_derive::KnownLayout,
893        zerocopy_derive::Immutable,
894        zerocopy_derive::FromBytes,
895        zerocopy_derive::IntoBytes,
896    )
897)]
898pub struct fuse_open_in {
899    pub flags: u32,
900    pub open_flags: u32,
901}
902#[allow(clippy::unnecessary_operation, clippy::identity_op)]
903const _: () = {
904    ["Size of fuse_open_in"][::core::mem::size_of::<fuse_open_in>() - 8usize];
905    ["Alignment of fuse_open_in"][::core::mem::align_of::<fuse_open_in>() - 4usize];
906    ["Offset of field: fuse_open_in::flags"][::core::mem::offset_of!(fuse_open_in, flags) - 0usize];
907    ["Offset of field: fuse_open_in::open_flags"]
908        [::core::mem::offset_of!(fuse_open_in, open_flags) - 4usize];
909};
910#[repr(C)]
911#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
912#[cfg_attr(
913    feature = "zerocopy",
914    derive(
915        zerocopy_derive::KnownLayout,
916        zerocopy_derive::Immutable,
917        zerocopy_derive::FromBytes,
918        zerocopy_derive::IntoBytes,
919    )
920)]
921pub struct fuse_create_in {
922    pub flags: u32,
923    pub mode: u32,
924    pub umask: u32,
925    pub open_flags: u32,
926}
927#[allow(clippy::unnecessary_operation, clippy::identity_op)]
928const _: () = {
929    ["Size of fuse_create_in"][::core::mem::size_of::<fuse_create_in>() - 16usize];
930    ["Alignment of fuse_create_in"][::core::mem::align_of::<fuse_create_in>() - 4usize];
931    ["Offset of field: fuse_create_in::flags"]
932        [::core::mem::offset_of!(fuse_create_in, flags) - 0usize];
933    ["Offset of field: fuse_create_in::mode"]
934        [::core::mem::offset_of!(fuse_create_in, mode) - 4usize];
935    ["Offset of field: fuse_create_in::umask"]
936        [::core::mem::offset_of!(fuse_create_in, umask) - 8usize];
937    ["Offset of field: fuse_create_in::open_flags"]
938        [::core::mem::offset_of!(fuse_create_in, open_flags) - 12usize];
939};
940#[repr(C)]
941#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
942#[cfg_attr(
943    feature = "zerocopy",
944    derive(
945        zerocopy_derive::KnownLayout,
946        zerocopy_derive::Immutable,
947        zerocopy_derive::FromBytes,
948        zerocopy_derive::IntoBytes,
949    )
950)]
951pub struct fuse_open_out {
952    pub fh: u64,
953    pub open_flags: u32,
954    pub backing_id: i32,
955}
956#[allow(clippy::unnecessary_operation, clippy::identity_op)]
957const _: () = {
958    ["Size of fuse_open_out"][::core::mem::size_of::<fuse_open_out>() - 16usize];
959    ["Alignment of fuse_open_out"][::core::mem::align_of::<fuse_open_out>() - 8usize];
960    ["Offset of field: fuse_open_out::fh"][::core::mem::offset_of!(fuse_open_out, fh) - 0usize];
961    ["Offset of field: fuse_open_out::open_flags"]
962        [::core::mem::offset_of!(fuse_open_out, open_flags) - 8usize];
963    ["Offset of field: fuse_open_out::backing_id"]
964        [::core::mem::offset_of!(fuse_open_out, backing_id) - 12usize];
965};
966#[repr(C)]
967#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
968#[cfg_attr(
969    feature = "zerocopy",
970    derive(
971        zerocopy_derive::KnownLayout,
972        zerocopy_derive::Immutable,
973        zerocopy_derive::FromBytes,
974        zerocopy_derive::IntoBytes,
975    )
976)]
977pub struct fuse_release_in {
978    pub fh: u64,
979    pub flags: u32,
980    pub release_flags: u32,
981    pub lock_owner: u64,
982}
983#[allow(clippy::unnecessary_operation, clippy::identity_op)]
984const _: () = {
985    ["Size of fuse_release_in"][::core::mem::size_of::<fuse_release_in>() - 24usize];
986    ["Alignment of fuse_release_in"][::core::mem::align_of::<fuse_release_in>() - 8usize];
987    ["Offset of field: fuse_release_in::fh"][::core::mem::offset_of!(fuse_release_in, fh) - 0usize];
988    ["Offset of field: fuse_release_in::flags"]
989        [::core::mem::offset_of!(fuse_release_in, flags) - 8usize];
990    ["Offset of field: fuse_release_in::release_flags"]
991        [::core::mem::offset_of!(fuse_release_in, release_flags) - 12usize];
992    ["Offset of field: fuse_release_in::lock_owner"]
993        [::core::mem::offset_of!(fuse_release_in, lock_owner) - 16usize];
994};
995#[repr(C)]
996#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
997#[cfg_attr(
998    feature = "zerocopy",
999    derive(
1000        zerocopy_derive::KnownLayout,
1001        zerocopy_derive::Immutable,
1002        zerocopy_derive::FromBytes,
1003        zerocopy_derive::IntoBytes,
1004    )
1005)]
1006pub struct fuse_flush_in {
1007    pub fh: u64,
1008    pub unused: u32,
1009    pub padding: u32,
1010    pub lock_owner: u64,
1011}
1012#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1013const _: () = {
1014    ["Size of fuse_flush_in"][::core::mem::size_of::<fuse_flush_in>() - 24usize];
1015    ["Alignment of fuse_flush_in"][::core::mem::align_of::<fuse_flush_in>() - 8usize];
1016    ["Offset of field: fuse_flush_in::fh"][::core::mem::offset_of!(fuse_flush_in, fh) - 0usize];
1017    ["Offset of field: fuse_flush_in::unused"]
1018        [::core::mem::offset_of!(fuse_flush_in, unused) - 8usize];
1019    ["Offset of field: fuse_flush_in::padding"]
1020        [::core::mem::offset_of!(fuse_flush_in, padding) - 12usize];
1021    ["Offset of field: fuse_flush_in::lock_owner"]
1022        [::core::mem::offset_of!(fuse_flush_in, lock_owner) - 16usize];
1023};
1024#[repr(C)]
1025#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1026#[cfg_attr(
1027    feature = "zerocopy",
1028    derive(
1029        zerocopy_derive::KnownLayout,
1030        zerocopy_derive::Immutable,
1031        zerocopy_derive::FromBytes,
1032        zerocopy_derive::IntoBytes,
1033    )
1034)]
1035pub struct fuse_read_in {
1036    pub fh: u64,
1037    pub offset: u64,
1038    pub size: u32,
1039    pub read_flags: u32,
1040    pub lock_owner: u64,
1041    pub flags: u32,
1042    pub padding: u32,
1043}
1044#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1045const _: () = {
1046    ["Size of fuse_read_in"][::core::mem::size_of::<fuse_read_in>() - 40usize];
1047    ["Alignment of fuse_read_in"][::core::mem::align_of::<fuse_read_in>() - 8usize];
1048    ["Offset of field: fuse_read_in::fh"][::core::mem::offset_of!(fuse_read_in, fh) - 0usize];
1049    ["Offset of field: fuse_read_in::offset"]
1050        [::core::mem::offset_of!(fuse_read_in, offset) - 8usize];
1051    ["Offset of field: fuse_read_in::size"][::core::mem::offset_of!(fuse_read_in, size) - 16usize];
1052    ["Offset of field: fuse_read_in::read_flags"]
1053        [::core::mem::offset_of!(fuse_read_in, read_flags) - 20usize];
1054    ["Offset of field: fuse_read_in::lock_owner"]
1055        [::core::mem::offset_of!(fuse_read_in, lock_owner) - 24usize];
1056    ["Offset of field: fuse_read_in::flags"]
1057        [::core::mem::offset_of!(fuse_read_in, flags) - 32usize];
1058    ["Offset of field: fuse_read_in::padding"]
1059        [::core::mem::offset_of!(fuse_read_in, padding) - 36usize];
1060};
1061#[repr(C)]
1062#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1063#[cfg_attr(
1064    feature = "zerocopy",
1065    derive(
1066        zerocopy_derive::KnownLayout,
1067        zerocopy_derive::Immutable,
1068        zerocopy_derive::FromBytes,
1069        zerocopy_derive::IntoBytes,
1070    )
1071)]
1072pub struct fuse_write_in {
1073    pub fh: u64,
1074    pub offset: u64,
1075    pub size: u32,
1076    pub write_flags: u32,
1077    pub lock_owner: u64,
1078    pub flags: u32,
1079    pub padding: u32,
1080}
1081#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1082const _: () = {
1083    ["Size of fuse_write_in"][::core::mem::size_of::<fuse_write_in>() - 40usize];
1084    ["Alignment of fuse_write_in"][::core::mem::align_of::<fuse_write_in>() - 8usize];
1085    ["Offset of field: fuse_write_in::fh"][::core::mem::offset_of!(fuse_write_in, fh) - 0usize];
1086    ["Offset of field: fuse_write_in::offset"]
1087        [::core::mem::offset_of!(fuse_write_in, offset) - 8usize];
1088    ["Offset of field: fuse_write_in::size"]
1089        [::core::mem::offset_of!(fuse_write_in, size) - 16usize];
1090    ["Offset of field: fuse_write_in::write_flags"]
1091        [::core::mem::offset_of!(fuse_write_in, write_flags) - 20usize];
1092    ["Offset of field: fuse_write_in::lock_owner"]
1093        [::core::mem::offset_of!(fuse_write_in, lock_owner) - 24usize];
1094    ["Offset of field: fuse_write_in::flags"]
1095        [::core::mem::offset_of!(fuse_write_in, flags) - 32usize];
1096    ["Offset of field: fuse_write_in::padding"]
1097        [::core::mem::offset_of!(fuse_write_in, padding) - 36usize];
1098};
1099#[repr(C)]
1100#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1101#[cfg_attr(
1102    feature = "zerocopy",
1103    derive(
1104        zerocopy_derive::KnownLayout,
1105        zerocopy_derive::Immutable,
1106        zerocopy_derive::FromBytes,
1107        zerocopy_derive::IntoBytes,
1108    )
1109)]
1110pub struct fuse_write_out {
1111    pub size: u32,
1112    pub padding: u32,
1113}
1114#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1115const _: () = {
1116    ["Size of fuse_write_out"][::core::mem::size_of::<fuse_write_out>() - 8usize];
1117    ["Alignment of fuse_write_out"][::core::mem::align_of::<fuse_write_out>() - 4usize];
1118    ["Offset of field: fuse_write_out::size"]
1119        [::core::mem::offset_of!(fuse_write_out, size) - 0usize];
1120    ["Offset of field: fuse_write_out::padding"]
1121        [::core::mem::offset_of!(fuse_write_out, padding) - 4usize];
1122};
1123#[repr(C)]
1124#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1125#[cfg_attr(
1126    feature = "zerocopy",
1127    derive(
1128        zerocopy_derive::KnownLayout,
1129        zerocopy_derive::Immutable,
1130        zerocopy_derive::FromBytes,
1131        zerocopy_derive::IntoBytes,
1132    )
1133)]
1134pub struct fuse_statfs_out {
1135    pub st: fuse_kstatfs,
1136}
1137#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1138const _: () = {
1139    ["Size of fuse_statfs_out"][::core::mem::size_of::<fuse_statfs_out>() - 80usize];
1140    ["Alignment of fuse_statfs_out"][::core::mem::align_of::<fuse_statfs_out>() - 8usize];
1141    ["Offset of field: fuse_statfs_out::st"][::core::mem::offset_of!(fuse_statfs_out, st) - 0usize];
1142};
1143#[repr(C)]
1144#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1145#[cfg_attr(
1146    feature = "zerocopy",
1147    derive(
1148        zerocopy_derive::KnownLayout,
1149        zerocopy_derive::Immutable,
1150        zerocopy_derive::FromBytes,
1151        zerocopy_derive::IntoBytes,
1152    )
1153)]
1154pub struct fuse_fsync_in {
1155    pub fh: u64,
1156    pub fsync_flags: u32,
1157    pub padding: u32,
1158}
1159#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1160const _: () = {
1161    ["Size of fuse_fsync_in"][::core::mem::size_of::<fuse_fsync_in>() - 16usize];
1162    ["Alignment of fuse_fsync_in"][::core::mem::align_of::<fuse_fsync_in>() - 8usize];
1163    ["Offset of field: fuse_fsync_in::fh"][::core::mem::offset_of!(fuse_fsync_in, fh) - 0usize];
1164    ["Offset of field: fuse_fsync_in::fsync_flags"]
1165        [::core::mem::offset_of!(fuse_fsync_in, fsync_flags) - 8usize];
1166    ["Offset of field: fuse_fsync_in::padding"]
1167        [::core::mem::offset_of!(fuse_fsync_in, padding) - 12usize];
1168};
1169#[repr(C)]
1170#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1171#[cfg_attr(
1172    feature = "zerocopy",
1173    derive(
1174        zerocopy_derive::KnownLayout,
1175        zerocopy_derive::Immutable,
1176        zerocopy_derive::FromBytes,
1177        zerocopy_derive::IntoBytes,
1178    )
1179)]
1180pub struct fuse_setxattr_in {
1181    pub size: u32,
1182    pub flags: u32,
1183    pub setxattr_flags: u32,
1184    pub padding: u32,
1185}
1186#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1187const _: () = {
1188    ["Size of fuse_setxattr_in"][::core::mem::size_of::<fuse_setxattr_in>() - 16usize];
1189    ["Alignment of fuse_setxattr_in"][::core::mem::align_of::<fuse_setxattr_in>() - 4usize];
1190    ["Offset of field: fuse_setxattr_in::size"]
1191        [::core::mem::offset_of!(fuse_setxattr_in, size) - 0usize];
1192    ["Offset of field: fuse_setxattr_in::flags"]
1193        [::core::mem::offset_of!(fuse_setxattr_in, flags) - 4usize];
1194    ["Offset of field: fuse_setxattr_in::setxattr_flags"]
1195        [::core::mem::offset_of!(fuse_setxattr_in, setxattr_flags) - 8usize];
1196    ["Offset of field: fuse_setxattr_in::padding"]
1197        [::core::mem::offset_of!(fuse_setxattr_in, padding) - 12usize];
1198};
1199#[repr(C)]
1200#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1201#[cfg_attr(
1202    feature = "zerocopy",
1203    derive(
1204        zerocopy_derive::KnownLayout,
1205        zerocopy_derive::Immutable,
1206        zerocopy_derive::FromBytes,
1207        zerocopy_derive::IntoBytes,
1208    )
1209)]
1210pub struct fuse_getxattr_in {
1211    pub size: u32,
1212    pub padding: u32,
1213}
1214#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1215const _: () = {
1216    ["Size of fuse_getxattr_in"][::core::mem::size_of::<fuse_getxattr_in>() - 8usize];
1217    ["Alignment of fuse_getxattr_in"][::core::mem::align_of::<fuse_getxattr_in>() - 4usize];
1218    ["Offset of field: fuse_getxattr_in::size"]
1219        [::core::mem::offset_of!(fuse_getxattr_in, size) - 0usize];
1220    ["Offset of field: fuse_getxattr_in::padding"]
1221        [::core::mem::offset_of!(fuse_getxattr_in, padding) - 4usize];
1222};
1223#[repr(C)]
1224#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1225#[cfg_attr(
1226    feature = "zerocopy",
1227    derive(
1228        zerocopy_derive::KnownLayout,
1229        zerocopy_derive::Immutable,
1230        zerocopy_derive::FromBytes,
1231        zerocopy_derive::IntoBytes,
1232    )
1233)]
1234pub struct fuse_getxattr_out {
1235    pub size: u32,
1236    pub padding: u32,
1237}
1238#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1239const _: () = {
1240    ["Size of fuse_getxattr_out"][::core::mem::size_of::<fuse_getxattr_out>() - 8usize];
1241    ["Alignment of fuse_getxattr_out"][::core::mem::align_of::<fuse_getxattr_out>() - 4usize];
1242    ["Offset of field: fuse_getxattr_out::size"]
1243        [::core::mem::offset_of!(fuse_getxattr_out, size) - 0usize];
1244    ["Offset of field: fuse_getxattr_out::padding"]
1245        [::core::mem::offset_of!(fuse_getxattr_out, padding) - 4usize];
1246};
1247#[repr(C)]
1248#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1249#[cfg_attr(
1250    feature = "zerocopy",
1251    derive(
1252        zerocopy_derive::KnownLayout,
1253        zerocopy_derive::Immutable,
1254        zerocopy_derive::FromBytes,
1255        zerocopy_derive::IntoBytes,
1256    )
1257)]
1258pub struct fuse_lk_in {
1259    pub fh: u64,
1260    pub owner: u64,
1261    pub lk: fuse_file_lock,
1262    pub lk_flags: u32,
1263    pub padding: u32,
1264}
1265#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1266const _: () = {
1267    ["Size of fuse_lk_in"][::core::mem::size_of::<fuse_lk_in>() - 48usize];
1268    ["Alignment of fuse_lk_in"][::core::mem::align_of::<fuse_lk_in>() - 8usize];
1269    ["Offset of field: fuse_lk_in::fh"][::core::mem::offset_of!(fuse_lk_in, fh) - 0usize];
1270    ["Offset of field: fuse_lk_in::owner"][::core::mem::offset_of!(fuse_lk_in, owner) - 8usize];
1271    ["Offset of field: fuse_lk_in::lk"][::core::mem::offset_of!(fuse_lk_in, lk) - 16usize];
1272    ["Offset of field: fuse_lk_in::lk_flags"]
1273        [::core::mem::offset_of!(fuse_lk_in, lk_flags) - 40usize];
1274    ["Offset of field: fuse_lk_in::padding"]
1275        [::core::mem::offset_of!(fuse_lk_in, padding) - 44usize];
1276};
1277#[repr(C)]
1278#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1279#[cfg_attr(
1280    feature = "zerocopy",
1281    derive(
1282        zerocopy_derive::KnownLayout,
1283        zerocopy_derive::Immutable,
1284        zerocopy_derive::FromBytes,
1285        zerocopy_derive::IntoBytes,
1286    )
1287)]
1288pub struct fuse_lk_out {
1289    pub lk: fuse_file_lock,
1290}
1291#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1292const _: () = {
1293    ["Size of fuse_lk_out"][::core::mem::size_of::<fuse_lk_out>() - 24usize];
1294    ["Alignment of fuse_lk_out"][::core::mem::align_of::<fuse_lk_out>() - 8usize];
1295    ["Offset of field: fuse_lk_out::lk"][::core::mem::offset_of!(fuse_lk_out, lk) - 0usize];
1296};
1297#[repr(C)]
1298#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1299#[cfg_attr(
1300    feature = "zerocopy",
1301    derive(
1302        zerocopy_derive::KnownLayout,
1303        zerocopy_derive::Immutable,
1304        zerocopy_derive::FromBytes,
1305        zerocopy_derive::IntoBytes,
1306    )
1307)]
1308pub struct fuse_access_in {
1309    pub mask: u32,
1310    pub padding: u32,
1311}
1312#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1313const _: () = {
1314    ["Size of fuse_access_in"][::core::mem::size_of::<fuse_access_in>() - 8usize];
1315    ["Alignment of fuse_access_in"][::core::mem::align_of::<fuse_access_in>() - 4usize];
1316    ["Offset of field: fuse_access_in::mask"]
1317        [::core::mem::offset_of!(fuse_access_in, mask) - 0usize];
1318    ["Offset of field: fuse_access_in::padding"]
1319        [::core::mem::offset_of!(fuse_access_in, padding) - 4usize];
1320};
1321#[repr(C)]
1322#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1323#[cfg_attr(
1324    feature = "zerocopy",
1325    derive(
1326        zerocopy_derive::KnownLayout,
1327        zerocopy_derive::Immutable,
1328        zerocopy_derive::FromBytes,
1329        zerocopy_derive::IntoBytes,
1330    )
1331)]
1332pub struct fuse_init_in {
1333    pub major: u32,
1334    pub minor: u32,
1335    pub max_readahead: u32,
1336    pub flags: u32,
1337    pub flags2: u32,
1338    pub unused: [u32; 11usize],
1339}
1340#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1341const _: () = {
1342    ["Size of fuse_init_in"][::core::mem::size_of::<fuse_init_in>() - 64usize];
1343    ["Alignment of fuse_init_in"][::core::mem::align_of::<fuse_init_in>() - 4usize];
1344    ["Offset of field: fuse_init_in::major"][::core::mem::offset_of!(fuse_init_in, major) - 0usize];
1345    ["Offset of field: fuse_init_in::minor"][::core::mem::offset_of!(fuse_init_in, minor) - 4usize];
1346    ["Offset of field: fuse_init_in::max_readahead"]
1347        [::core::mem::offset_of!(fuse_init_in, max_readahead) - 8usize];
1348    ["Offset of field: fuse_init_in::flags"]
1349        [::core::mem::offset_of!(fuse_init_in, flags) - 12usize];
1350    ["Offset of field: fuse_init_in::flags2"]
1351        [::core::mem::offset_of!(fuse_init_in, flags2) - 16usize];
1352    ["Offset of field: fuse_init_in::unused"]
1353        [::core::mem::offset_of!(fuse_init_in, unused) - 20usize];
1354};
1355#[repr(C)]
1356#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1357#[cfg_attr(
1358    feature = "zerocopy",
1359    derive(
1360        zerocopy_derive::KnownLayout,
1361        zerocopy_derive::Immutable,
1362        zerocopy_derive::FromBytes,
1363        zerocopy_derive::IntoBytes,
1364    )
1365)]
1366pub struct fuse_init_out {
1367    pub major: u32,
1368    pub minor: u32,
1369    pub max_readahead: u32,
1370    pub flags: u32,
1371    pub max_background: u16,
1372    pub congestion_threshold: u16,
1373    pub max_write: u32,
1374    pub time_gran: u32,
1375    pub max_pages: u16,
1376    pub map_alignment: u16,
1377    pub flags2: u32,
1378    pub max_stack_depth: u32,
1379    pub unused: [u32; 6usize],
1380}
1381#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1382const _: () = {
1383    ["Size of fuse_init_out"][::core::mem::size_of::<fuse_init_out>() - 64usize];
1384    ["Alignment of fuse_init_out"][::core::mem::align_of::<fuse_init_out>() - 4usize];
1385    ["Offset of field: fuse_init_out::major"]
1386        [::core::mem::offset_of!(fuse_init_out, major) - 0usize];
1387    ["Offset of field: fuse_init_out::minor"]
1388        [::core::mem::offset_of!(fuse_init_out, minor) - 4usize];
1389    ["Offset of field: fuse_init_out::max_readahead"]
1390        [::core::mem::offset_of!(fuse_init_out, max_readahead) - 8usize];
1391    ["Offset of field: fuse_init_out::flags"]
1392        [::core::mem::offset_of!(fuse_init_out, flags) - 12usize];
1393    ["Offset of field: fuse_init_out::max_background"]
1394        [::core::mem::offset_of!(fuse_init_out, max_background) - 16usize];
1395    ["Offset of field: fuse_init_out::congestion_threshold"]
1396        [::core::mem::offset_of!(fuse_init_out, congestion_threshold) - 18usize];
1397    ["Offset of field: fuse_init_out::max_write"]
1398        [::core::mem::offset_of!(fuse_init_out, max_write) - 20usize];
1399    ["Offset of field: fuse_init_out::time_gran"]
1400        [::core::mem::offset_of!(fuse_init_out, time_gran) - 24usize];
1401    ["Offset of field: fuse_init_out::max_pages"]
1402        [::core::mem::offset_of!(fuse_init_out, max_pages) - 28usize];
1403    ["Offset of field: fuse_init_out::map_alignment"]
1404        [::core::mem::offset_of!(fuse_init_out, map_alignment) - 30usize];
1405    ["Offset of field: fuse_init_out::flags2"]
1406        [::core::mem::offset_of!(fuse_init_out, flags2) - 32usize];
1407    ["Offset of field: fuse_init_out::max_stack_depth"]
1408        [::core::mem::offset_of!(fuse_init_out, max_stack_depth) - 36usize];
1409    ["Offset of field: fuse_init_out::unused"]
1410        [::core::mem::offset_of!(fuse_init_out, unused) - 40usize];
1411};
1412#[repr(C)]
1413#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1414#[cfg_attr(
1415    feature = "zerocopy",
1416    derive(
1417        zerocopy_derive::KnownLayout,
1418        zerocopy_derive::Immutable,
1419        zerocopy_derive::FromBytes,
1420        zerocopy_derive::IntoBytes,
1421    )
1422)]
1423pub struct cuse_init_in {
1424    pub major: u32,
1425    pub minor: u32,
1426    pub unused: u32,
1427    pub flags: u32,
1428}
1429#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1430const _: () = {
1431    ["Size of cuse_init_in"][::core::mem::size_of::<cuse_init_in>() - 16usize];
1432    ["Alignment of cuse_init_in"][::core::mem::align_of::<cuse_init_in>() - 4usize];
1433    ["Offset of field: cuse_init_in::major"][::core::mem::offset_of!(cuse_init_in, major) - 0usize];
1434    ["Offset of field: cuse_init_in::minor"][::core::mem::offset_of!(cuse_init_in, minor) - 4usize];
1435    ["Offset of field: cuse_init_in::unused"]
1436        [::core::mem::offset_of!(cuse_init_in, unused) - 8usize];
1437    ["Offset of field: cuse_init_in::flags"]
1438        [::core::mem::offset_of!(cuse_init_in, flags) - 12usize];
1439};
1440#[repr(C)]
1441#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1442#[cfg_attr(
1443    feature = "zerocopy",
1444    derive(
1445        zerocopy_derive::KnownLayout,
1446        zerocopy_derive::Immutable,
1447        zerocopy_derive::FromBytes,
1448        zerocopy_derive::IntoBytes,
1449    )
1450)]
1451pub struct cuse_init_out {
1452    pub major: u32,
1453    pub minor: u32,
1454    pub unused: u32,
1455    pub flags: u32,
1456    pub max_read: u32,
1457    pub max_write: u32,
1458    pub dev_major: u32,
1459    pub dev_minor: u32,
1460    pub spare: [u32; 10usize],
1461}
1462#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1463const _: () = {
1464    ["Size of cuse_init_out"][::core::mem::size_of::<cuse_init_out>() - 72usize];
1465    ["Alignment of cuse_init_out"][::core::mem::align_of::<cuse_init_out>() - 4usize];
1466    ["Offset of field: cuse_init_out::major"]
1467        [::core::mem::offset_of!(cuse_init_out, major) - 0usize];
1468    ["Offset of field: cuse_init_out::minor"]
1469        [::core::mem::offset_of!(cuse_init_out, minor) - 4usize];
1470    ["Offset of field: cuse_init_out::unused"]
1471        [::core::mem::offset_of!(cuse_init_out, unused) - 8usize];
1472    ["Offset of field: cuse_init_out::flags"]
1473        [::core::mem::offset_of!(cuse_init_out, flags) - 12usize];
1474    ["Offset of field: cuse_init_out::max_read"]
1475        [::core::mem::offset_of!(cuse_init_out, max_read) - 16usize];
1476    ["Offset of field: cuse_init_out::max_write"]
1477        [::core::mem::offset_of!(cuse_init_out, max_write) - 20usize];
1478    ["Offset of field: cuse_init_out::dev_major"]
1479        [::core::mem::offset_of!(cuse_init_out, dev_major) - 24usize];
1480    ["Offset of field: cuse_init_out::dev_minor"]
1481        [::core::mem::offset_of!(cuse_init_out, dev_minor) - 28usize];
1482    ["Offset of field: cuse_init_out::spare"]
1483        [::core::mem::offset_of!(cuse_init_out, spare) - 32usize];
1484};
1485#[repr(C)]
1486#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1487#[cfg_attr(
1488    feature = "zerocopy",
1489    derive(
1490        zerocopy_derive::KnownLayout,
1491        zerocopy_derive::Immutable,
1492        zerocopy_derive::FromBytes,
1493        zerocopy_derive::IntoBytes,
1494    )
1495)]
1496pub struct fuse_interrupt_in {
1497    pub unique: u64,
1498}
1499#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1500const _: () = {
1501    ["Size of fuse_interrupt_in"][::core::mem::size_of::<fuse_interrupt_in>() - 8usize];
1502    ["Alignment of fuse_interrupt_in"][::core::mem::align_of::<fuse_interrupt_in>() - 8usize];
1503    ["Offset of field: fuse_interrupt_in::unique"]
1504        [::core::mem::offset_of!(fuse_interrupt_in, unique) - 0usize];
1505};
1506#[repr(C)]
1507#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1508#[cfg_attr(
1509    feature = "zerocopy",
1510    derive(
1511        zerocopy_derive::KnownLayout,
1512        zerocopy_derive::Immutable,
1513        zerocopy_derive::FromBytes,
1514        zerocopy_derive::IntoBytes,
1515    )
1516)]
1517pub struct fuse_bmap_in {
1518    pub block: u64,
1519    pub blocksize: u32,
1520    pub padding: u32,
1521}
1522#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1523const _: () = {
1524    ["Size of fuse_bmap_in"][::core::mem::size_of::<fuse_bmap_in>() - 16usize];
1525    ["Alignment of fuse_bmap_in"][::core::mem::align_of::<fuse_bmap_in>() - 8usize];
1526    ["Offset of field: fuse_bmap_in::block"][::core::mem::offset_of!(fuse_bmap_in, block) - 0usize];
1527    ["Offset of field: fuse_bmap_in::blocksize"]
1528        [::core::mem::offset_of!(fuse_bmap_in, blocksize) - 8usize];
1529    ["Offset of field: fuse_bmap_in::padding"]
1530        [::core::mem::offset_of!(fuse_bmap_in, padding) - 12usize];
1531};
1532#[repr(C)]
1533#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1534#[cfg_attr(
1535    feature = "zerocopy",
1536    derive(
1537        zerocopy_derive::KnownLayout,
1538        zerocopy_derive::Immutable,
1539        zerocopy_derive::FromBytes,
1540        zerocopy_derive::IntoBytes,
1541    )
1542)]
1543pub struct fuse_bmap_out {
1544    pub block: u64,
1545}
1546#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1547const _: () = {
1548    ["Size of fuse_bmap_out"][::core::mem::size_of::<fuse_bmap_out>() - 8usize];
1549    ["Alignment of fuse_bmap_out"][::core::mem::align_of::<fuse_bmap_out>() - 8usize];
1550    ["Offset of field: fuse_bmap_out::block"]
1551        [::core::mem::offset_of!(fuse_bmap_out, block) - 0usize];
1552};
1553#[repr(C)]
1554#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1555#[cfg_attr(
1556    feature = "zerocopy",
1557    derive(
1558        zerocopy_derive::KnownLayout,
1559        zerocopy_derive::Immutable,
1560        zerocopy_derive::FromBytes,
1561        zerocopy_derive::IntoBytes,
1562    )
1563)]
1564pub struct fuse_ioctl_in {
1565    pub fh: u64,
1566    pub flags: u32,
1567    pub cmd: u32,
1568    pub arg: u64,
1569    pub in_size: u32,
1570    pub out_size: u32,
1571}
1572#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1573const _: () = {
1574    ["Size of fuse_ioctl_in"][::core::mem::size_of::<fuse_ioctl_in>() - 32usize];
1575    ["Alignment of fuse_ioctl_in"][::core::mem::align_of::<fuse_ioctl_in>() - 8usize];
1576    ["Offset of field: fuse_ioctl_in::fh"][::core::mem::offset_of!(fuse_ioctl_in, fh) - 0usize];
1577    ["Offset of field: fuse_ioctl_in::flags"]
1578        [::core::mem::offset_of!(fuse_ioctl_in, flags) - 8usize];
1579    ["Offset of field: fuse_ioctl_in::cmd"][::core::mem::offset_of!(fuse_ioctl_in, cmd) - 12usize];
1580    ["Offset of field: fuse_ioctl_in::arg"][::core::mem::offset_of!(fuse_ioctl_in, arg) - 16usize];
1581    ["Offset of field: fuse_ioctl_in::in_size"]
1582        [::core::mem::offset_of!(fuse_ioctl_in, in_size) - 24usize];
1583    ["Offset of field: fuse_ioctl_in::out_size"]
1584        [::core::mem::offset_of!(fuse_ioctl_in, out_size) - 28usize];
1585};
1586#[repr(C)]
1587#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1588#[cfg_attr(
1589    feature = "zerocopy",
1590    derive(
1591        zerocopy_derive::KnownLayout,
1592        zerocopy_derive::Immutable,
1593        zerocopy_derive::FromBytes,
1594        zerocopy_derive::IntoBytes,
1595    )
1596)]
1597pub struct fuse_ioctl_iovec {
1598    pub base: u64,
1599    pub len: u64,
1600}
1601#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1602const _: () = {
1603    ["Size of fuse_ioctl_iovec"][::core::mem::size_of::<fuse_ioctl_iovec>() - 16usize];
1604    ["Alignment of fuse_ioctl_iovec"][::core::mem::align_of::<fuse_ioctl_iovec>() - 8usize];
1605    ["Offset of field: fuse_ioctl_iovec::base"]
1606        [::core::mem::offset_of!(fuse_ioctl_iovec, base) - 0usize];
1607    ["Offset of field: fuse_ioctl_iovec::len"]
1608        [::core::mem::offset_of!(fuse_ioctl_iovec, len) - 8usize];
1609};
1610#[repr(C)]
1611#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1612#[cfg_attr(
1613    feature = "zerocopy",
1614    derive(
1615        zerocopy_derive::KnownLayout,
1616        zerocopy_derive::Immutable,
1617        zerocopy_derive::FromBytes,
1618        zerocopy_derive::IntoBytes,
1619    )
1620)]
1621pub struct fuse_ioctl_out {
1622    pub result: i32,
1623    pub flags: u32,
1624    pub in_iovs: u32,
1625    pub out_iovs: u32,
1626}
1627#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1628const _: () = {
1629    ["Size of fuse_ioctl_out"][::core::mem::size_of::<fuse_ioctl_out>() - 16usize];
1630    ["Alignment of fuse_ioctl_out"][::core::mem::align_of::<fuse_ioctl_out>() - 4usize];
1631    ["Offset of field: fuse_ioctl_out::result"]
1632        [::core::mem::offset_of!(fuse_ioctl_out, result) - 0usize];
1633    ["Offset of field: fuse_ioctl_out::flags"]
1634        [::core::mem::offset_of!(fuse_ioctl_out, flags) - 4usize];
1635    ["Offset of field: fuse_ioctl_out::in_iovs"]
1636        [::core::mem::offset_of!(fuse_ioctl_out, in_iovs) - 8usize];
1637    ["Offset of field: fuse_ioctl_out::out_iovs"]
1638        [::core::mem::offset_of!(fuse_ioctl_out, out_iovs) - 12usize];
1639};
1640#[repr(C)]
1641#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1642#[cfg_attr(
1643    feature = "zerocopy",
1644    derive(
1645        zerocopy_derive::KnownLayout,
1646        zerocopy_derive::Immutable,
1647        zerocopy_derive::FromBytes,
1648        zerocopy_derive::IntoBytes,
1649    )
1650)]
1651pub struct fuse_poll_in {
1652    pub fh: u64,
1653    pub kh: u64,
1654    pub flags: u32,
1655    pub events: u32,
1656}
1657#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1658const _: () = {
1659    ["Size of fuse_poll_in"][::core::mem::size_of::<fuse_poll_in>() - 24usize];
1660    ["Alignment of fuse_poll_in"][::core::mem::align_of::<fuse_poll_in>() - 8usize];
1661    ["Offset of field: fuse_poll_in::fh"][::core::mem::offset_of!(fuse_poll_in, fh) - 0usize];
1662    ["Offset of field: fuse_poll_in::kh"][::core::mem::offset_of!(fuse_poll_in, kh) - 8usize];
1663    ["Offset of field: fuse_poll_in::flags"]
1664        [::core::mem::offset_of!(fuse_poll_in, flags) - 16usize];
1665    ["Offset of field: fuse_poll_in::events"]
1666        [::core::mem::offset_of!(fuse_poll_in, events) - 20usize];
1667};
1668#[repr(C)]
1669#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1670#[cfg_attr(
1671    feature = "zerocopy",
1672    derive(
1673        zerocopy_derive::KnownLayout,
1674        zerocopy_derive::Immutable,
1675        zerocopy_derive::FromBytes,
1676        zerocopy_derive::IntoBytes,
1677    )
1678)]
1679pub struct fuse_poll_out {
1680    pub revents: u32,
1681    pub padding: u32,
1682}
1683#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1684const _: () = {
1685    ["Size of fuse_poll_out"][::core::mem::size_of::<fuse_poll_out>() - 8usize];
1686    ["Alignment of fuse_poll_out"][::core::mem::align_of::<fuse_poll_out>() - 4usize];
1687    ["Offset of field: fuse_poll_out::revents"]
1688        [::core::mem::offset_of!(fuse_poll_out, revents) - 0usize];
1689    ["Offset of field: fuse_poll_out::padding"]
1690        [::core::mem::offset_of!(fuse_poll_out, padding) - 4usize];
1691};
1692#[repr(C)]
1693#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1694#[cfg_attr(
1695    feature = "zerocopy",
1696    derive(
1697        zerocopy_derive::KnownLayout,
1698        zerocopy_derive::Immutable,
1699        zerocopy_derive::FromBytes,
1700        zerocopy_derive::IntoBytes,
1701    )
1702)]
1703pub struct fuse_notify_poll_wakeup_out {
1704    pub kh: u64,
1705}
1706#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1707const _: () = {
1708    ["Size of fuse_notify_poll_wakeup_out"]
1709        [::core::mem::size_of::<fuse_notify_poll_wakeup_out>() - 8usize];
1710    ["Alignment of fuse_notify_poll_wakeup_out"]
1711        [::core::mem::align_of::<fuse_notify_poll_wakeup_out>() - 8usize];
1712    ["Offset of field: fuse_notify_poll_wakeup_out::kh"]
1713        [::core::mem::offset_of!(fuse_notify_poll_wakeup_out, kh) - 0usize];
1714};
1715#[repr(C)]
1716#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1717#[cfg_attr(
1718    feature = "zerocopy",
1719    derive(
1720        zerocopy_derive::KnownLayout,
1721        zerocopy_derive::Immutable,
1722        zerocopy_derive::FromBytes,
1723        zerocopy_derive::IntoBytes,
1724    )
1725)]
1726pub struct fuse_fallocate_in {
1727    pub fh: u64,
1728    pub offset: u64,
1729    pub length: u64,
1730    pub mode: u32,
1731    pub padding: u32,
1732}
1733#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1734const _: () = {
1735    ["Size of fuse_fallocate_in"][::core::mem::size_of::<fuse_fallocate_in>() - 32usize];
1736    ["Alignment of fuse_fallocate_in"][::core::mem::align_of::<fuse_fallocate_in>() - 8usize];
1737    ["Offset of field: fuse_fallocate_in::fh"]
1738        [::core::mem::offset_of!(fuse_fallocate_in, fh) - 0usize];
1739    ["Offset of field: fuse_fallocate_in::offset"]
1740        [::core::mem::offset_of!(fuse_fallocate_in, offset) - 8usize];
1741    ["Offset of field: fuse_fallocate_in::length"]
1742        [::core::mem::offset_of!(fuse_fallocate_in, length) - 16usize];
1743    ["Offset of field: fuse_fallocate_in::mode"]
1744        [::core::mem::offset_of!(fuse_fallocate_in, mode) - 24usize];
1745    ["Offset of field: fuse_fallocate_in::padding"]
1746        [::core::mem::offset_of!(fuse_fallocate_in, padding) - 28usize];
1747};
1748#[repr(C)]
1749#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1750#[cfg_attr(
1751    feature = "zerocopy",
1752    derive(
1753        zerocopy_derive::KnownLayout,
1754        zerocopy_derive::Immutable,
1755        zerocopy_derive::FromBytes,
1756        zerocopy_derive::IntoBytes,
1757    )
1758)]
1759pub struct fuse_in_header {
1760    pub len: u32,
1761    pub opcode: u32,
1762    pub unique: u64,
1763    pub nodeid: u64,
1764    pub uid: u32,
1765    pub gid: u32,
1766    pub pid: u32,
1767    pub total_extlen: u16,
1768    pub padding: u16,
1769}
1770#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1771const _: () = {
1772    ["Size of fuse_in_header"][::core::mem::size_of::<fuse_in_header>() - 40usize];
1773    ["Alignment of fuse_in_header"][::core::mem::align_of::<fuse_in_header>() - 8usize];
1774    ["Offset of field: fuse_in_header::len"][::core::mem::offset_of!(fuse_in_header, len) - 0usize];
1775    ["Offset of field: fuse_in_header::opcode"]
1776        [::core::mem::offset_of!(fuse_in_header, opcode) - 4usize];
1777    ["Offset of field: fuse_in_header::unique"]
1778        [::core::mem::offset_of!(fuse_in_header, unique) - 8usize];
1779    ["Offset of field: fuse_in_header::nodeid"]
1780        [::core::mem::offset_of!(fuse_in_header, nodeid) - 16usize];
1781    ["Offset of field: fuse_in_header::uid"]
1782        [::core::mem::offset_of!(fuse_in_header, uid) - 24usize];
1783    ["Offset of field: fuse_in_header::gid"]
1784        [::core::mem::offset_of!(fuse_in_header, gid) - 28usize];
1785    ["Offset of field: fuse_in_header::pid"]
1786        [::core::mem::offset_of!(fuse_in_header, pid) - 32usize];
1787    ["Offset of field: fuse_in_header::total_extlen"]
1788        [::core::mem::offset_of!(fuse_in_header, total_extlen) - 36usize];
1789    ["Offset of field: fuse_in_header::padding"]
1790        [::core::mem::offset_of!(fuse_in_header, padding) - 38usize];
1791};
1792#[repr(C)]
1793#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1794#[cfg_attr(
1795    feature = "zerocopy",
1796    derive(
1797        zerocopy_derive::KnownLayout,
1798        zerocopy_derive::Immutable,
1799        zerocopy_derive::FromBytes,
1800        zerocopy_derive::IntoBytes,
1801    )
1802)]
1803pub struct fuse_out_header {
1804    pub len: u32,
1805    pub error: i32,
1806    pub unique: u64,
1807}
1808#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1809const _: () = {
1810    ["Size of fuse_out_header"][::core::mem::size_of::<fuse_out_header>() - 16usize];
1811    ["Alignment of fuse_out_header"][::core::mem::align_of::<fuse_out_header>() - 8usize];
1812    ["Offset of field: fuse_out_header::len"]
1813        [::core::mem::offset_of!(fuse_out_header, len) - 0usize];
1814    ["Offset of field: fuse_out_header::error"]
1815        [::core::mem::offset_of!(fuse_out_header, error) - 4usize];
1816    ["Offset of field: fuse_out_header::unique"]
1817        [::core::mem::offset_of!(fuse_out_header, unique) - 8usize];
1818};
1819#[repr(C)]
1820#[derive(Debug, Default)]
1821#[cfg_attr(
1822    feature = "zerocopy",
1823    derive(
1824        zerocopy_derive::KnownLayout,
1825        zerocopy_derive::Immutable,
1826        zerocopy_derive::FromBytes,
1827        zerocopy_derive::IntoBytes,
1828    )
1829)]
1830pub struct fuse_dirent {
1831    pub ino: u64,
1832    pub off: u64,
1833    pub namelen: u32,
1834    pub type_: u32,
1835    pub name: __IncompleteArrayField<::core::ffi::c_char>,
1836}
1837#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1838const _: () = {
1839    ["Size of fuse_dirent"][::core::mem::size_of::<fuse_dirent>() - 24usize];
1840    ["Alignment of fuse_dirent"][::core::mem::align_of::<fuse_dirent>() - 8usize];
1841    ["Offset of field: fuse_dirent::ino"][::core::mem::offset_of!(fuse_dirent, ino) - 0usize];
1842    ["Offset of field: fuse_dirent::off"][::core::mem::offset_of!(fuse_dirent, off) - 8usize];
1843    ["Offset of field: fuse_dirent::namelen"]
1844        [::core::mem::offset_of!(fuse_dirent, namelen) - 16usize];
1845    ["Offset of field: fuse_dirent::type_"][::core::mem::offset_of!(fuse_dirent, type_) - 20usize];
1846    ["Offset of field: fuse_dirent::name"][::core::mem::offset_of!(fuse_dirent, name) - 24usize];
1847};
1848#[repr(C)]
1849#[derive(Debug, Default)]
1850#[cfg_attr(
1851    feature = "zerocopy",
1852    derive(
1853        zerocopy_derive::KnownLayout,
1854        zerocopy_derive::Immutable,
1855        zerocopy_derive::FromBytes,
1856        zerocopy_derive::IntoBytes,
1857    )
1858)]
1859pub struct fuse_direntplus {
1860    pub entry_out: fuse_entry_out,
1861    pub dirent: fuse_dirent,
1862}
1863#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1864const _: () = {
1865    ["Size of fuse_direntplus"][::core::mem::size_of::<fuse_direntplus>() - 152usize];
1866    ["Alignment of fuse_direntplus"][::core::mem::align_of::<fuse_direntplus>() - 8usize];
1867    ["Offset of field: fuse_direntplus::entry_out"]
1868        [::core::mem::offset_of!(fuse_direntplus, entry_out) - 0usize];
1869    ["Offset of field: fuse_direntplus::dirent"]
1870        [::core::mem::offset_of!(fuse_direntplus, dirent) - 128usize];
1871};
1872#[repr(C)]
1873#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1874#[cfg_attr(
1875    feature = "zerocopy",
1876    derive(
1877        zerocopy_derive::KnownLayout,
1878        zerocopy_derive::Immutable,
1879        zerocopy_derive::FromBytes,
1880        zerocopy_derive::IntoBytes,
1881    )
1882)]
1883pub struct fuse_notify_inval_inode_out {
1884    pub ino: u64,
1885    pub off: i64,
1886    pub len: i64,
1887}
1888#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1889const _: () = {
1890    ["Size of fuse_notify_inval_inode_out"]
1891        [::core::mem::size_of::<fuse_notify_inval_inode_out>() - 24usize];
1892    ["Alignment of fuse_notify_inval_inode_out"]
1893        [::core::mem::align_of::<fuse_notify_inval_inode_out>() - 8usize];
1894    ["Offset of field: fuse_notify_inval_inode_out::ino"]
1895        [::core::mem::offset_of!(fuse_notify_inval_inode_out, ino) - 0usize];
1896    ["Offset of field: fuse_notify_inval_inode_out::off"]
1897        [::core::mem::offset_of!(fuse_notify_inval_inode_out, off) - 8usize];
1898    ["Offset of field: fuse_notify_inval_inode_out::len"]
1899        [::core::mem::offset_of!(fuse_notify_inval_inode_out, len) - 16usize];
1900};
1901#[repr(C)]
1902#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1903#[cfg_attr(
1904    feature = "zerocopy",
1905    derive(
1906        zerocopy_derive::KnownLayout,
1907        zerocopy_derive::Immutable,
1908        zerocopy_derive::FromBytes,
1909        zerocopy_derive::IntoBytes,
1910    )
1911)]
1912pub struct fuse_notify_inval_entry_out {
1913    pub parent: u64,
1914    pub namelen: u32,
1915    pub flags: u32,
1916}
1917#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1918const _: () = {
1919    ["Size of fuse_notify_inval_entry_out"]
1920        [::core::mem::size_of::<fuse_notify_inval_entry_out>() - 16usize];
1921    ["Alignment of fuse_notify_inval_entry_out"]
1922        [::core::mem::align_of::<fuse_notify_inval_entry_out>() - 8usize];
1923    ["Offset of field: fuse_notify_inval_entry_out::parent"]
1924        [::core::mem::offset_of!(fuse_notify_inval_entry_out, parent) - 0usize];
1925    ["Offset of field: fuse_notify_inval_entry_out::namelen"]
1926        [::core::mem::offset_of!(fuse_notify_inval_entry_out, namelen) - 8usize];
1927    ["Offset of field: fuse_notify_inval_entry_out::flags"]
1928        [::core::mem::offset_of!(fuse_notify_inval_entry_out, flags) - 12usize];
1929};
1930#[repr(C)]
1931#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1932#[cfg_attr(
1933    feature = "zerocopy",
1934    derive(
1935        zerocopy_derive::KnownLayout,
1936        zerocopy_derive::Immutable,
1937        zerocopy_derive::FromBytes,
1938        zerocopy_derive::IntoBytes,
1939    )
1940)]
1941pub struct fuse_notify_delete_out {
1942    pub parent: u64,
1943    pub child: u64,
1944    pub namelen: u32,
1945    pub padding: u32,
1946}
1947#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1948const _: () = {
1949    ["Size of fuse_notify_delete_out"][::core::mem::size_of::<fuse_notify_delete_out>() - 24usize];
1950    ["Alignment of fuse_notify_delete_out"]
1951        [::core::mem::align_of::<fuse_notify_delete_out>() - 8usize];
1952    ["Offset of field: fuse_notify_delete_out::parent"]
1953        [::core::mem::offset_of!(fuse_notify_delete_out, parent) - 0usize];
1954    ["Offset of field: fuse_notify_delete_out::child"]
1955        [::core::mem::offset_of!(fuse_notify_delete_out, child) - 8usize];
1956    ["Offset of field: fuse_notify_delete_out::namelen"]
1957        [::core::mem::offset_of!(fuse_notify_delete_out, namelen) - 16usize];
1958    ["Offset of field: fuse_notify_delete_out::padding"]
1959        [::core::mem::offset_of!(fuse_notify_delete_out, padding) - 20usize];
1960};
1961#[repr(C)]
1962#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1963#[cfg_attr(
1964    feature = "zerocopy",
1965    derive(
1966        zerocopy_derive::KnownLayout,
1967        zerocopy_derive::Immutable,
1968        zerocopy_derive::FromBytes,
1969        zerocopy_derive::IntoBytes,
1970    )
1971)]
1972pub struct fuse_notify_store_out {
1973    pub nodeid: u64,
1974    pub offset: u64,
1975    pub size: u32,
1976    pub padding: u32,
1977}
1978#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1979const _: () = {
1980    ["Size of fuse_notify_store_out"][::core::mem::size_of::<fuse_notify_store_out>() - 24usize];
1981    ["Alignment of fuse_notify_store_out"]
1982        [::core::mem::align_of::<fuse_notify_store_out>() - 8usize];
1983    ["Offset of field: fuse_notify_store_out::nodeid"]
1984        [::core::mem::offset_of!(fuse_notify_store_out, nodeid) - 0usize];
1985    ["Offset of field: fuse_notify_store_out::offset"]
1986        [::core::mem::offset_of!(fuse_notify_store_out, offset) - 8usize];
1987    ["Offset of field: fuse_notify_store_out::size"]
1988        [::core::mem::offset_of!(fuse_notify_store_out, size) - 16usize];
1989    ["Offset of field: fuse_notify_store_out::padding"]
1990        [::core::mem::offset_of!(fuse_notify_store_out, padding) - 20usize];
1991};
1992#[repr(C)]
1993#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
1994#[cfg_attr(
1995    feature = "zerocopy",
1996    derive(
1997        zerocopy_derive::KnownLayout,
1998        zerocopy_derive::Immutable,
1999        zerocopy_derive::FromBytes,
2000        zerocopy_derive::IntoBytes,
2001    )
2002)]
2003pub struct fuse_notify_retrieve_out {
2004    pub notify_unique: u64,
2005    pub nodeid: u64,
2006    pub offset: u64,
2007    pub size: u32,
2008    pub padding: u32,
2009}
2010#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2011const _: () = {
2012    ["Size of fuse_notify_retrieve_out"]
2013        [::core::mem::size_of::<fuse_notify_retrieve_out>() - 32usize];
2014    ["Alignment of fuse_notify_retrieve_out"]
2015        [::core::mem::align_of::<fuse_notify_retrieve_out>() - 8usize];
2016    ["Offset of field: fuse_notify_retrieve_out::notify_unique"]
2017        [::core::mem::offset_of!(fuse_notify_retrieve_out, notify_unique) - 0usize];
2018    ["Offset of field: fuse_notify_retrieve_out::nodeid"]
2019        [::core::mem::offset_of!(fuse_notify_retrieve_out, nodeid) - 8usize];
2020    ["Offset of field: fuse_notify_retrieve_out::offset"]
2021        [::core::mem::offset_of!(fuse_notify_retrieve_out, offset) - 16usize];
2022    ["Offset of field: fuse_notify_retrieve_out::size"]
2023        [::core::mem::offset_of!(fuse_notify_retrieve_out, size) - 24usize];
2024    ["Offset of field: fuse_notify_retrieve_out::padding"]
2025        [::core::mem::offset_of!(fuse_notify_retrieve_out, padding) - 28usize];
2026};
2027#[repr(C)]
2028#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
2029#[cfg_attr(
2030    feature = "zerocopy",
2031    derive(
2032        zerocopy_derive::KnownLayout,
2033        zerocopy_derive::Immutable,
2034        zerocopy_derive::FromBytes,
2035        zerocopy_derive::IntoBytes,
2036    )
2037)]
2038pub struct fuse_notify_retrieve_in {
2039    pub dummy1: u64,
2040    pub offset: u64,
2041    pub size: u32,
2042    pub dummy2: u32,
2043    pub dummy3: u64,
2044    pub dummy4: u64,
2045}
2046#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2047const _: () = {
2048    ["Size of fuse_notify_retrieve_in"]
2049        [::core::mem::size_of::<fuse_notify_retrieve_in>() - 40usize];
2050    ["Alignment of fuse_notify_retrieve_in"]
2051        [::core::mem::align_of::<fuse_notify_retrieve_in>() - 8usize];
2052    ["Offset of field: fuse_notify_retrieve_in::dummy1"]
2053        [::core::mem::offset_of!(fuse_notify_retrieve_in, dummy1) - 0usize];
2054    ["Offset of field: fuse_notify_retrieve_in::offset"]
2055        [::core::mem::offset_of!(fuse_notify_retrieve_in, offset) - 8usize];
2056    ["Offset of field: fuse_notify_retrieve_in::size"]
2057        [::core::mem::offset_of!(fuse_notify_retrieve_in, size) - 16usize];
2058    ["Offset of field: fuse_notify_retrieve_in::dummy2"]
2059        [::core::mem::offset_of!(fuse_notify_retrieve_in, dummy2) - 20usize];
2060    ["Offset of field: fuse_notify_retrieve_in::dummy3"]
2061        [::core::mem::offset_of!(fuse_notify_retrieve_in, dummy3) - 24usize];
2062    ["Offset of field: fuse_notify_retrieve_in::dummy4"]
2063        [::core::mem::offset_of!(fuse_notify_retrieve_in, dummy4) - 32usize];
2064};
2065#[repr(C)]
2066#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
2067#[cfg_attr(
2068    feature = "zerocopy",
2069    derive(
2070        zerocopy_derive::KnownLayout,
2071        zerocopy_derive::Immutable,
2072        zerocopy_derive::FromBytes,
2073        zerocopy_derive::IntoBytes,
2074    )
2075)]
2076pub struct fuse_backing_map {
2077    pub fd: i32,
2078    pub flags: u32,
2079    pub padding: u64,
2080}
2081#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2082const _: () = {
2083    ["Size of fuse_backing_map"][::core::mem::size_of::<fuse_backing_map>() - 16usize];
2084    ["Alignment of fuse_backing_map"][::core::mem::align_of::<fuse_backing_map>() - 8usize];
2085    ["Offset of field: fuse_backing_map::fd"]
2086        [::core::mem::offset_of!(fuse_backing_map, fd) - 0usize];
2087    ["Offset of field: fuse_backing_map::flags"]
2088        [::core::mem::offset_of!(fuse_backing_map, flags) - 4usize];
2089    ["Offset of field: fuse_backing_map::padding"]
2090        [::core::mem::offset_of!(fuse_backing_map, padding) - 8usize];
2091};
2092#[repr(C)]
2093#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
2094#[cfg_attr(
2095    feature = "zerocopy",
2096    derive(
2097        zerocopy_derive::KnownLayout,
2098        zerocopy_derive::Immutable,
2099        zerocopy_derive::FromBytes,
2100        zerocopy_derive::IntoBytes,
2101    )
2102)]
2103pub struct fuse_lseek_in {
2104    pub fh: u64,
2105    pub offset: u64,
2106    pub whence: u32,
2107    pub padding: u32,
2108}
2109#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2110const _: () = {
2111    ["Size of fuse_lseek_in"][::core::mem::size_of::<fuse_lseek_in>() - 24usize];
2112    ["Alignment of fuse_lseek_in"][::core::mem::align_of::<fuse_lseek_in>() - 8usize];
2113    ["Offset of field: fuse_lseek_in::fh"][::core::mem::offset_of!(fuse_lseek_in, fh) - 0usize];
2114    ["Offset of field: fuse_lseek_in::offset"]
2115        [::core::mem::offset_of!(fuse_lseek_in, offset) - 8usize];
2116    ["Offset of field: fuse_lseek_in::whence"]
2117        [::core::mem::offset_of!(fuse_lseek_in, whence) - 16usize];
2118    ["Offset of field: fuse_lseek_in::padding"]
2119        [::core::mem::offset_of!(fuse_lseek_in, padding) - 20usize];
2120};
2121#[repr(C)]
2122#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
2123#[cfg_attr(
2124    feature = "zerocopy",
2125    derive(
2126        zerocopy_derive::KnownLayout,
2127        zerocopy_derive::Immutable,
2128        zerocopy_derive::FromBytes,
2129        zerocopy_derive::IntoBytes,
2130    )
2131)]
2132pub struct fuse_lseek_out {
2133    pub offset: u64,
2134}
2135#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2136const _: () = {
2137    ["Size of fuse_lseek_out"][::core::mem::size_of::<fuse_lseek_out>() - 8usize];
2138    ["Alignment of fuse_lseek_out"][::core::mem::align_of::<fuse_lseek_out>() - 8usize];
2139    ["Offset of field: fuse_lseek_out::offset"]
2140        [::core::mem::offset_of!(fuse_lseek_out, offset) - 0usize];
2141};
2142#[repr(C)]
2143#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
2144#[cfg_attr(
2145    feature = "zerocopy",
2146    derive(
2147        zerocopy_derive::KnownLayout,
2148        zerocopy_derive::Immutable,
2149        zerocopy_derive::FromBytes,
2150        zerocopy_derive::IntoBytes,
2151    )
2152)]
2153pub struct fuse_copy_file_range_in {
2154    pub fh_in: u64,
2155    pub off_in: u64,
2156    pub nodeid_out: u64,
2157    pub fh_out: u64,
2158    pub off_out: u64,
2159    pub len: u64,
2160    pub flags: u64,
2161}
2162#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2163const _: () = {
2164    ["Size of fuse_copy_file_range_in"]
2165        [::core::mem::size_of::<fuse_copy_file_range_in>() - 56usize];
2166    ["Alignment of fuse_copy_file_range_in"]
2167        [::core::mem::align_of::<fuse_copy_file_range_in>() - 8usize];
2168    ["Offset of field: fuse_copy_file_range_in::fh_in"]
2169        [::core::mem::offset_of!(fuse_copy_file_range_in, fh_in) - 0usize];
2170    ["Offset of field: fuse_copy_file_range_in::off_in"]
2171        [::core::mem::offset_of!(fuse_copy_file_range_in, off_in) - 8usize];
2172    ["Offset of field: fuse_copy_file_range_in::nodeid_out"]
2173        [::core::mem::offset_of!(fuse_copy_file_range_in, nodeid_out) - 16usize];
2174    ["Offset of field: fuse_copy_file_range_in::fh_out"]
2175        [::core::mem::offset_of!(fuse_copy_file_range_in, fh_out) - 24usize];
2176    ["Offset of field: fuse_copy_file_range_in::off_out"]
2177        [::core::mem::offset_of!(fuse_copy_file_range_in, off_out) - 32usize];
2178    ["Offset of field: fuse_copy_file_range_in::len"]
2179        [::core::mem::offset_of!(fuse_copy_file_range_in, len) - 40usize];
2180    ["Offset of field: fuse_copy_file_range_in::flags"]
2181        [::core::mem::offset_of!(fuse_copy_file_range_in, flags) - 48usize];
2182};
2183#[repr(C)]
2184#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
2185#[cfg_attr(
2186    feature = "zerocopy",
2187    derive(
2188        zerocopy_derive::KnownLayout,
2189        zerocopy_derive::Immutable,
2190        zerocopy_derive::FromBytes,
2191        zerocopy_derive::IntoBytes,
2192    )
2193)]
2194pub struct fuse_setupmapping_in {
2195    pub fh: u64,
2196    pub foffset: u64,
2197    pub len: u64,
2198    pub flags: u64,
2199    pub moffset: u64,
2200}
2201#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2202const _: () = {
2203    ["Size of fuse_setupmapping_in"][::core::mem::size_of::<fuse_setupmapping_in>() - 40usize];
2204    ["Alignment of fuse_setupmapping_in"][::core::mem::align_of::<fuse_setupmapping_in>() - 8usize];
2205    ["Offset of field: fuse_setupmapping_in::fh"]
2206        [::core::mem::offset_of!(fuse_setupmapping_in, fh) - 0usize];
2207    ["Offset of field: fuse_setupmapping_in::foffset"]
2208        [::core::mem::offset_of!(fuse_setupmapping_in, foffset) - 8usize];
2209    ["Offset of field: fuse_setupmapping_in::len"]
2210        [::core::mem::offset_of!(fuse_setupmapping_in, len) - 16usize];
2211    ["Offset of field: fuse_setupmapping_in::flags"]
2212        [::core::mem::offset_of!(fuse_setupmapping_in, flags) - 24usize];
2213    ["Offset of field: fuse_setupmapping_in::moffset"]
2214        [::core::mem::offset_of!(fuse_setupmapping_in, moffset) - 32usize];
2215};
2216#[repr(C)]
2217#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
2218#[cfg_attr(
2219    feature = "zerocopy",
2220    derive(
2221        zerocopy_derive::KnownLayout,
2222        zerocopy_derive::Immutable,
2223        zerocopy_derive::FromBytes,
2224        zerocopy_derive::IntoBytes,
2225    )
2226)]
2227pub struct fuse_removemapping_in {
2228    pub count: u32,
2229}
2230#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2231const _: () = {
2232    ["Size of fuse_removemapping_in"][::core::mem::size_of::<fuse_removemapping_in>() - 4usize];
2233    ["Alignment of fuse_removemapping_in"]
2234        [::core::mem::align_of::<fuse_removemapping_in>() - 4usize];
2235    ["Offset of field: fuse_removemapping_in::count"]
2236        [::core::mem::offset_of!(fuse_removemapping_in, count) - 0usize];
2237};
2238#[repr(C)]
2239#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
2240#[cfg_attr(
2241    feature = "zerocopy",
2242    derive(
2243        zerocopy_derive::KnownLayout,
2244        zerocopy_derive::Immutable,
2245        zerocopy_derive::FromBytes,
2246        zerocopy_derive::IntoBytes,
2247    )
2248)]
2249pub struct fuse_removemapping_one {
2250    pub moffset: u64,
2251    pub len: u64,
2252}
2253#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2254const _: () = {
2255    ["Size of fuse_removemapping_one"][::core::mem::size_of::<fuse_removemapping_one>() - 16usize];
2256    ["Alignment of fuse_removemapping_one"]
2257        [::core::mem::align_of::<fuse_removemapping_one>() - 8usize];
2258    ["Offset of field: fuse_removemapping_one::moffset"]
2259        [::core::mem::offset_of!(fuse_removemapping_one, moffset) - 0usize];
2260    ["Offset of field: fuse_removemapping_one::len"]
2261        [::core::mem::offset_of!(fuse_removemapping_one, len) - 8usize];
2262};
2263#[repr(C)]
2264#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
2265#[cfg_attr(
2266    feature = "zerocopy",
2267    derive(
2268        zerocopy_derive::KnownLayout,
2269        zerocopy_derive::Immutable,
2270        zerocopy_derive::FromBytes,
2271        zerocopy_derive::IntoBytes,
2272    )
2273)]
2274pub struct fuse_syncfs_in {
2275    pub padding: u64,
2276}
2277#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2278const _: () = {
2279    ["Size of fuse_syncfs_in"][::core::mem::size_of::<fuse_syncfs_in>() - 8usize];
2280    ["Alignment of fuse_syncfs_in"][::core::mem::align_of::<fuse_syncfs_in>() - 8usize];
2281    ["Offset of field: fuse_syncfs_in::padding"]
2282        [::core::mem::offset_of!(fuse_syncfs_in, padding) - 0usize];
2283};
2284#[repr(C)]
2285#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
2286#[cfg_attr(
2287    feature = "zerocopy",
2288    derive(
2289        zerocopy_derive::KnownLayout,
2290        zerocopy_derive::Immutable,
2291        zerocopy_derive::FromBytes,
2292        zerocopy_derive::IntoBytes,
2293    )
2294)]
2295pub struct fuse_secctx {
2296    pub size: u32,
2297    pub padding: u32,
2298}
2299#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2300const _: () = {
2301    ["Size of fuse_secctx"][::core::mem::size_of::<fuse_secctx>() - 8usize];
2302    ["Alignment of fuse_secctx"][::core::mem::align_of::<fuse_secctx>() - 4usize];
2303    ["Offset of field: fuse_secctx::size"][::core::mem::offset_of!(fuse_secctx, size) - 0usize];
2304    ["Offset of field: fuse_secctx::padding"]
2305        [::core::mem::offset_of!(fuse_secctx, padding) - 4usize];
2306};
2307#[repr(C)]
2308#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
2309#[cfg_attr(
2310    feature = "zerocopy",
2311    derive(
2312        zerocopy_derive::KnownLayout,
2313        zerocopy_derive::Immutable,
2314        zerocopy_derive::FromBytes,
2315        zerocopy_derive::IntoBytes,
2316    )
2317)]
2318pub struct fuse_secctx_header {
2319    pub size: u32,
2320    pub nr_secctx: u32,
2321}
2322#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2323const _: () = {
2324    ["Size of fuse_secctx_header"][::core::mem::size_of::<fuse_secctx_header>() - 8usize];
2325    ["Alignment of fuse_secctx_header"][::core::mem::align_of::<fuse_secctx_header>() - 4usize];
2326    ["Offset of field: fuse_secctx_header::size"]
2327        [::core::mem::offset_of!(fuse_secctx_header, size) - 0usize];
2328    ["Offset of field: fuse_secctx_header::nr_secctx"]
2329        [::core::mem::offset_of!(fuse_secctx_header, nr_secctx) - 4usize];
2330};
2331/// struct fuse_ext_header - extension header
2332/// @size: total size of this extension including this header
2333/// @type: type of extension
2334///
2335/// This is made compatible with fuse_secctx_header by using type values >
2336/// FUSE_MAX_NR_SECCTX
2337#[repr(C)]
2338#[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)]
2339#[cfg_attr(
2340    feature = "zerocopy",
2341    derive(
2342        zerocopy_derive::KnownLayout,
2343        zerocopy_derive::Immutable,
2344        zerocopy_derive::FromBytes,
2345        zerocopy_derive::IntoBytes,
2346    )
2347)]
2348pub struct fuse_ext_header {
2349    pub size: u32,
2350    pub type_: u32,
2351}
2352#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2353const _: () = {
2354    ["Size of fuse_ext_header"][::core::mem::size_of::<fuse_ext_header>() - 8usize];
2355    ["Alignment of fuse_ext_header"][::core::mem::align_of::<fuse_ext_header>() - 4usize];
2356    ["Offset of field: fuse_ext_header::size"]
2357        [::core::mem::offset_of!(fuse_ext_header, size) - 0usize];
2358    ["Offset of field: fuse_ext_header::type_"]
2359        [::core::mem::offset_of!(fuse_ext_header, type_) - 4usize];
2360};
2361/// struct fuse_supp_groups - Supplementary group extension
2362/// @nr_groups: number of supplementary groups
2363/// @groups: flexible array of group IDs
2364#[repr(C)]
2365#[derive(Debug, Default)]
2366#[cfg_attr(
2367    feature = "zerocopy",
2368    derive(
2369        zerocopy_derive::KnownLayout,
2370        zerocopy_derive::Immutable,
2371        zerocopy_derive::FromBytes,
2372        zerocopy_derive::IntoBytes,
2373    )
2374)]
2375pub struct fuse_supp_groups {
2376    pub nr_groups: u32,
2377    pub groups: __IncompleteArrayField<u32>,
2378}
2379#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2380const _: () = {
2381    ["Size of fuse_supp_groups"][::core::mem::size_of::<fuse_supp_groups>() - 4usize];
2382    ["Alignment of fuse_supp_groups"][::core::mem::align_of::<fuse_supp_groups>() - 4usize];
2383    ["Offset of field: fuse_supp_groups::nr_groups"]
2384        [::core::mem::offset_of!(fuse_supp_groups, nr_groups) - 0usize];
2385    ["Offset of field: fuse_supp_groups::groups"]
2386        [::core::mem::offset_of!(fuse_supp_groups, groups) - 4usize];
2387};