Home | History | Annotate | Download | only in linux
      1 /****************************************************************************
      2  ****************************************************************************
      3  ***
      4  ***   This header was automatically generated from a Linux kernel header
      5  ***   of the same name, to make information necessary for userspace to
      6  ***   call into the kernel available to libc.  It contains only constants,
      7  ***   structures, and macros generated from the original header, and thus,
      8  ***   contains no copyrightable information.
      9  ***
     10  ***   To edit the content of this header, modify the corresponding
     11  ***   source file (e.g. under external/kernel-headers/original/) then
     12  ***   run bionic/libc/kernel/tools/update_all.py
     13  ***
     14  ***   Any manual change here will be lost the next time this script will
     15  ***   be run. You've been warned!
     16  ***
     17  ****************************************************************************
     18  ****************************************************************************/
     19 #ifndef _LINUX_FUSE_H
     20 #define _LINUX_FUSE_H
     21 #include <stdint.h>
     22 #define FUSE_KERNEL_VERSION 7
     23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     24 #define FUSE_KERNEL_MINOR_VERSION 23
     25 #define FUSE_ROOT_ID 1
     26 struct fuse_attr {
     27  uint64_t ino;
     28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     29  uint64_t size;
     30  uint64_t blocks;
     31  uint64_t atime;
     32  uint64_t mtime;
     33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     34  uint64_t ctime;
     35  uint32_t atimensec;
     36  uint32_t mtimensec;
     37  uint32_t ctimensec;
     38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     39  uint32_t mode;
     40  uint32_t nlink;
     41  uint32_t uid;
     42  uint32_t gid;
     43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     44  uint32_t rdev;
     45  uint32_t blksize;
     46  uint32_t padding;
     47 };
     48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     49 struct fuse_kstatfs {
     50  uint64_t blocks;
     51  uint64_t bfree;
     52  uint64_t bavail;
     53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     54  uint64_t files;
     55  uint64_t ffree;
     56  uint32_t bsize;
     57  uint32_t namelen;
     58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     59  uint32_t frsize;
     60  uint32_t padding;
     61  uint32_t spare[6];
     62 };
     63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     64 struct fuse_file_lock {
     65  uint64_t start;
     66  uint64_t end;
     67  uint32_t type;
     68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     69  uint32_t pid;
     70 };
     71 #define FATTR_MODE (1 << 0)
     72 #define FATTR_UID (1 << 1)
     73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     74 #define FATTR_GID (1 << 2)
     75 #define FATTR_SIZE (1 << 3)
     76 #define FATTR_ATIME (1 << 4)
     77 #define FATTR_MTIME (1 << 5)
     78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     79 #define FATTR_FH (1 << 6)
     80 #define FATTR_ATIME_NOW (1 << 7)
     81 #define FATTR_MTIME_NOW (1 << 8)
     82 #define FATTR_LOCKOWNER (1 << 9)
     83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     84 #define FOPEN_DIRECT_IO (1 << 0)
     85 #define FOPEN_KEEP_CACHE (1 << 1)
     86 #define FOPEN_NONSEEKABLE (1 << 2)
     87 #define FUSE_ASYNC_READ (1 << 0)
     88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     89 #define FUSE_POSIX_LOCKS (1 << 1)
     90 #define FUSE_FILE_OPS (1 << 2)
     91 #define FUSE_ATOMIC_O_TRUNC (1 << 3)
     92 #define FUSE_EXPORT_SUPPORT (1 << 4)
     93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     94 #define FUSE_BIG_WRITES (1 << 5)
     95 #define FUSE_DONT_MASK (1 << 6)
     96 #define FUSE_SPLICE_WRITE (1 << 7)
     97 #define FUSE_SPLICE_MOVE (1 << 8)
     98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     99 #define FUSE_SPLICE_READ (1 << 9)
    100 #define FUSE_FLOCK_LOCKS (1 << 10)
    101 #define FUSE_HAS_IOCTL_DIR (1 << 11)
    102 #define FUSE_AUTO_INVAL_DATA (1 << 12)
    103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    104 #define FUSE_DO_READDIRPLUS (1 << 13)
    105 #define FUSE_READDIRPLUS_AUTO (1 << 14)
    106 #define FUSE_ASYNC_DIO (1 << 15)
    107 #define FUSE_WRITEBACK_CACHE (1 << 16)
    108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    109 #define CUSE_UNRESTRICTED_IOCTL (1 << 0)
    110 #define FUSE_RELEASE_FLUSH (1 << 0)
    111 #define FUSE_RELEASE_FLOCK_UNLOCK (1 << 1)
    112 #define FUSE_GETATTR_FH (1 << 0)
    113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    114 #define FUSE_LK_FLOCK (1 << 0)
    115 #define FUSE_WRITE_CACHE (1 << 0)
    116 #define FUSE_WRITE_LOCKOWNER (1 << 1)
    117 #define FUSE_READ_LOCKOWNER (1 << 1)
    118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    119 #define FUSE_IOCTL_COMPAT (1 << 0)
    120 #define FUSE_IOCTL_UNRESTRICTED (1 << 1)
    121 #define FUSE_IOCTL_RETRY (1 << 2)
    122 #define FUSE_IOCTL_32BIT (1 << 3)
    123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    124 #define FUSE_IOCTL_DIR (1 << 4)
    125 #define FUSE_IOCTL_MAX_IOV 256
    126 #define FUSE_POLL_SCHEDULE_NOTIFY (1 << 0)
    127 enum fuse_opcode {
    128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    129  FUSE_LOOKUP = 1,
    130  FUSE_FORGET = 2,
    131  FUSE_GETATTR = 3,
    132  FUSE_SETATTR = 4,
    133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    134  FUSE_READLINK = 5,
    135  FUSE_SYMLINK = 6,
    136  FUSE_MKNOD = 8,
    137  FUSE_MKDIR = 9,
    138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    139  FUSE_UNLINK = 10,
    140  FUSE_RMDIR = 11,
    141  FUSE_RENAME = 12,
    142  FUSE_LINK = 13,
    143 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    144  FUSE_OPEN = 14,
    145  FUSE_READ = 15,
    146  FUSE_WRITE = 16,
    147  FUSE_STATFS = 17,
    148 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    149  FUSE_RELEASE = 18,
    150  FUSE_FSYNC = 20,
    151  FUSE_SETXATTR = 21,
    152  FUSE_GETXATTR = 22,
    153 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    154  FUSE_LISTXATTR = 23,
    155  FUSE_REMOVEXATTR = 24,
    156  FUSE_FLUSH = 25,
    157  FUSE_INIT = 26,
    158 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    159  FUSE_OPENDIR = 27,
    160  FUSE_READDIR = 28,
    161  FUSE_RELEASEDIR = 29,
    162  FUSE_FSYNCDIR = 30,
    163 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    164  FUSE_GETLK = 31,
    165  FUSE_SETLK = 32,
    166  FUSE_SETLKW = 33,
    167  FUSE_ACCESS = 34,
    168 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    169  FUSE_CREATE = 35,
    170  FUSE_INTERRUPT = 36,
    171  FUSE_BMAP = 37,
    172  FUSE_DESTROY = 38,
    173 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    174  FUSE_IOCTL = 39,
    175  FUSE_POLL = 40,
    176  FUSE_NOTIFY_REPLY = 41,
    177  FUSE_BATCH_FORGET = 42,
    178 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    179  FUSE_FALLOCATE = 43,
    180  FUSE_READDIRPLUS = 44,
    181  CUSE_INIT = 4096,
    182 };
    183 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    184 enum fuse_notify_code {
    185  FUSE_NOTIFY_POLL = 1,
    186  FUSE_NOTIFY_INVAL_INODE = 2,
    187  FUSE_NOTIFY_INVAL_ENTRY = 3,
    188 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    189  FUSE_NOTIFY_STORE = 4,
    190  FUSE_NOTIFY_RETRIEVE = 5,
    191  FUSE_NOTIFY_DELETE = 6,
    192  FUSE_NOTIFY_CODE_MAX,
    193 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    194 };
    195 #define FUSE_MIN_READ_BUFFER 8192
    196 #define FUSE_COMPAT_ENTRY_OUT_SIZE 120
    197 struct fuse_entry_out {
    198 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    199  uint64_t nodeid;
    200  uint64_t generation;
    201  uint64_t entry_valid;
    202  uint64_t attr_valid;
    203 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    204  uint32_t entry_valid_nsec;
    205  uint32_t attr_valid_nsec;
    206  struct fuse_attr attr;
    207 };
    208 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    209 struct fuse_forget_in {
    210  uint64_t nlookup;
    211 };
    212 struct fuse_forget_one {
    213 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    214  uint64_t nodeid;
    215  uint64_t nlookup;
    216 };
    217 struct fuse_batch_forget_in {
    218 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    219  uint32_t count;
    220  uint32_t dummy;
    221 };
    222 struct fuse_getattr_in {
    223 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    224  uint32_t getattr_flags;
    225  uint32_t dummy;
    226  uint64_t fh;
    227 };
    228 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    229 #define FUSE_COMPAT_ATTR_OUT_SIZE 96
    230 struct fuse_attr_out {
    231  uint64_t attr_valid;
    232  uint32_t attr_valid_nsec;
    233 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    234  uint32_t dummy;
    235  struct fuse_attr attr;
    236 };
    237 #define FUSE_COMPAT_MKNOD_IN_SIZE 8
    238 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    239 struct fuse_mknod_in {
    240  uint32_t mode;
    241  uint32_t rdev;
    242  uint32_t umask;
    243 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    244  uint32_t padding;
    245 };
    246 struct fuse_mkdir_in {
    247  uint32_t mode;
    248 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    249  uint32_t umask;
    250 };
    251 struct fuse_rename_in {
    252  uint64_t newdir;
    253 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    254 };
    255 struct fuse_link_in {
    256  uint64_t oldnodeid;
    257 };
    258 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    259 struct fuse_setattr_in {
    260  uint32_t valid;
    261  uint32_t padding;
    262  uint64_t fh;
    263 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    264  uint64_t size;
    265  uint64_t lock_owner;
    266  uint64_t atime;
    267  uint64_t mtime;
    268 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    269  uint64_t unused2;
    270  uint32_t atimensec;
    271  uint32_t mtimensec;
    272  uint32_t unused3;
    273 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    274  uint32_t mode;
    275  uint32_t unused4;
    276  uint32_t uid;
    277  uint32_t gid;
    278 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    279  uint32_t unused5;
    280 };
    281 struct fuse_open_in {
    282  uint32_t flags;
    283 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    284  uint32_t unused;
    285 };
    286 struct fuse_create_in {
    287  uint32_t flags;
    288 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    289  uint32_t mode;
    290  uint32_t umask;
    291  uint32_t padding;
    292 };
    293 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    294 struct fuse_open_out {
    295  uint64_t fh;
    296  uint32_t open_flags;
    297  uint32_t padding;
    298 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    299 };
    300 struct fuse_release_in {
    301  uint64_t fh;
    302  uint32_t flags;
    303 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    304  uint32_t release_flags;
    305  uint64_t lock_owner;
    306 };
    307 struct fuse_flush_in {
    308 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    309  uint64_t fh;
    310  uint32_t unused;
    311  uint32_t padding;
    312  uint64_t lock_owner;
    313 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    314 };
    315 struct fuse_read_in {
    316  uint64_t fh;
    317  uint64_t offset;
    318 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    319  uint32_t size;
    320  uint32_t read_flags;
    321  uint64_t lock_owner;
    322  uint32_t flags;
    323 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    324  uint32_t padding;
    325 };
    326 #define FUSE_COMPAT_WRITE_IN_SIZE 24
    327 struct fuse_write_in {
    328 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    329  uint64_t fh;
    330  uint64_t offset;
    331  uint32_t size;
    332  uint32_t write_flags;
    333 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    334  uint64_t lock_owner;
    335  uint32_t flags;
    336  uint32_t padding;
    337 };
    338 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    339 struct fuse_write_out {
    340  uint32_t size;
    341  uint32_t padding;
    342 };
    343 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    344 #define FUSE_COMPAT_STATFS_SIZE 48
    345 struct fuse_statfs_out {
    346  struct fuse_kstatfs st;
    347 };
    348 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    349 struct fuse_fsync_in {
    350  uint64_t fh;
    351  uint32_t fsync_flags;
    352  uint32_t padding;
    353 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    354 };
    355 struct fuse_setxattr_in {
    356  uint32_t size;
    357  uint32_t flags;
    358 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    359 };
    360 struct fuse_getxattr_in {
    361  uint32_t size;
    362  uint32_t padding;
    363 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    364 };
    365 struct fuse_getxattr_out {
    366  uint32_t size;
    367  uint32_t padding;
    368 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    369 };
    370 struct fuse_lk_in {
    371  uint64_t fh;
    372  uint64_t owner;
    373 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    374  struct fuse_file_lock lk;
    375  uint32_t lk_flags;
    376  uint32_t padding;
    377 };
    378 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    379 struct fuse_lk_out {
    380  struct fuse_file_lock lk;
    381 };
    382 struct fuse_access_in {
    383 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    384  uint32_t mask;
    385  uint32_t padding;
    386 };
    387 struct fuse_init_in {
    388 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    389  uint32_t major;
    390  uint32_t minor;
    391  uint32_t max_readahead;
    392  uint32_t flags;
    393 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    394 };
    395 struct fuse_init_out {
    396  uint32_t major;
    397  uint32_t minor;
    398 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    399  uint32_t max_readahead;
    400  uint32_t flags;
    401  uint16_t max_background;
    402  uint16_t congestion_threshold;
    403 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    404  uint32_t max_write;
    405 };
    406 #define CUSE_INIT_INFO_MAX 4096
    407 struct cuse_init_in {
    408 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    409  uint32_t major;
    410  uint32_t minor;
    411  uint32_t unused;
    412  uint32_t flags;
    413 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    414 };
    415 struct cuse_init_out {
    416  uint32_t major;
    417  uint32_t minor;
    418 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    419  uint32_t unused;
    420  uint32_t flags;
    421  uint32_t max_read;
    422  uint32_t max_write;
    423 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    424  uint32_t dev_major;
    425  uint32_t dev_minor;
    426  uint32_t spare[10];
    427 };
    428 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    429 struct fuse_interrupt_in {
    430  uint64_t unique;
    431 };
    432 struct fuse_bmap_in {
    433 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    434  uint64_t block;
    435  uint32_t blocksize;
    436  uint32_t padding;
    437 };
    438 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    439 struct fuse_bmap_out {
    440  uint64_t block;
    441 };
    442 struct fuse_ioctl_in {
    443 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    444  uint64_t fh;
    445  uint32_t flags;
    446  uint32_t cmd;
    447  uint64_t arg;
    448 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    449  uint32_t in_size;
    450  uint32_t out_size;
    451 };
    452 struct fuse_ioctl_iovec {
    453 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    454  uint64_t base;
    455  uint64_t len;
    456 };
    457 struct fuse_ioctl_out {
    458 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    459  int32_t result;
    460  uint32_t flags;
    461  uint32_t in_iovs;
    462  uint32_t out_iovs;
    463 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    464 };
    465 struct fuse_poll_in {
    466  uint64_t fh;
    467  uint64_t kh;
    468 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    469  uint32_t flags;
    470  uint32_t events;
    471 };
    472 struct fuse_poll_out {
    473 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    474  uint32_t revents;
    475  uint32_t padding;
    476 };
    477 struct fuse_notify_poll_wakeup_out {
    478 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    479  uint64_t kh;
    480 };
    481 struct fuse_fallocate_in {
    482  uint64_t fh;
    483 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    484  uint64_t offset;
    485  uint64_t length;
    486  uint32_t mode;
    487  uint32_t padding;
    488 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    489 };
    490 struct fuse_in_header {
    491  uint32_t len;
    492  uint32_t opcode;
    493 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    494  uint64_t unique;
    495  uint64_t nodeid;
    496  uint32_t uid;
    497  uint32_t gid;
    498 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    499  uint32_t pid;
    500  uint32_t padding;
    501 };
    502 struct fuse_out_header {
    503 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    504  uint32_t len;
    505  int32_t error;
    506  uint64_t unique;
    507 };
    508 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    509 struct fuse_dirent {
    510  uint64_t ino;
    511  uint64_t off;
    512  uint32_t namelen;
    513 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    514  uint32_t type;
    515  char name[];
    516 };
    517 #define FUSE_NAME_OFFSET offsetof(struct fuse_dirent, name)
    518 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    519 #define FUSE_DIRENT_ALIGN(x)   (((x) + sizeof(uint64_t) - 1) & ~(sizeof(uint64_t) - 1))
    520 #define FUSE_DIRENT_SIZE(d)   FUSE_DIRENT_ALIGN(FUSE_NAME_OFFSET + (d)->namelen)
    521 struct fuse_direntplus {
    522  struct fuse_entry_out entry_out;
    523 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    524  struct fuse_dirent dirent;
    525 };
    526 #define FUSE_NAME_OFFSET_DIRENTPLUS   offsetof(struct fuse_direntplus, dirent.name)
    527 #define FUSE_DIRENTPLUS_SIZE(d)   FUSE_DIRENT_ALIGN(FUSE_NAME_OFFSET_DIRENTPLUS + (d)->dirent.namelen)
    528 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    529 struct fuse_notify_inval_inode_out {
    530  uint64_t ino;
    531  int64_t off;
    532  int64_t len;
    533 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    534 };
    535 struct fuse_notify_inval_entry_out {
    536  uint64_t parent;
    537  uint32_t namelen;
    538 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    539  uint32_t padding;
    540 };
    541 struct fuse_notify_delete_out {
    542  uint64_t parent;
    543 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    544  uint64_t child;
    545  uint32_t namelen;
    546  uint32_t padding;
    547 };
    548 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    549 struct fuse_notify_store_out {
    550  uint64_t nodeid;
    551  uint64_t offset;
    552  uint32_t size;
    553 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    554  uint32_t padding;
    555 };
    556 struct fuse_notify_retrieve_out {
    557  uint64_t notify_unique;
    558 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    559  uint64_t nodeid;
    560  uint64_t offset;
    561  uint32_t size;
    562  uint32_t padding;
    563 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    564 };
    565 struct fuse_notify_retrieve_in {
    566  uint64_t dummy1;
    567  uint64_t offset;
    568 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    569  uint32_t size;
    570  uint32_t dummy2;
    571  uint64_t dummy3;
    572  uint64_t dummy4;
    573 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    574 };
    575 #endif
    576 
    577