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 _UAPI_CODA_HEADER_
     20 #define _UAPI_CODA_HEADER_
     21 #if defined(__NetBSD__) || (defined(DJGPP) || defined(__CYGWIN32__)) && !defined(KERNEL)
     22 #include <sys/types.h>
     23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     24 #endif
     25 #ifndef CODA_MAXSYMLINKS
     26 #define CODA_MAXSYMLINKS 10
     27 #endif
     28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     29 #if defined(DJGPP) || defined(__CYGWIN32__)
     30 #ifdef KERNEL
     31 typedef unsigned long u_long;
     32 typedef unsigned int u_int;
     33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     34 typedef unsigned short u_short;
     35 typedef u_long ino_t;
     36 typedef u_long dev_t;
     37 typedef void * caddr_t;
     38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     39 #ifdef DOS
     40 typedef unsigned __int64 u_quad_t;
     41 #else
     42 typedef unsigned long long u_quad_t;
     43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     44 #endif
     45 #define inline
     46 struct timespec {
     47   long ts_sec;
     48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     49   long ts_nsec;
     50 };
     51 #else
     52 #include <sys/time.h>
     53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     54 typedef unsigned long long u_quad_t;
     55 #endif
     56 #endif
     57 #ifdef __linux__
     58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     59 #include <linux/time.h>
     60 #define cdev_t u_quad_t
     61 #if !defined(_UQUAD_T_) && (!defined(__GLIBC__) || __GLIBC__ < 2)
     62 #define _UQUAD_T_ 1
     63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     64 typedef unsigned long long u_quad_t;
     65 #endif
     66 #else
     67 #define cdev_t dev_t
     68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     69 #endif
     70 #ifdef __CYGWIN32__
     71 struct timespec {
     72   time_t tv_sec;
     73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     74   long tv_nsec;
     75 };
     76 #endif
     77 #ifndef __BIT_TYPES_DEFINED__
     78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     79 #define __BIT_TYPES_DEFINED__
     80 typedef signed char int8_t;
     81 typedef unsigned char u_int8_t;
     82 typedef short int16_t;
     83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     84 typedef unsigned short u_int16_t;
     85 typedef int int32_t;
     86 typedef unsigned int u_int32_t;
     87 #endif
     88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     89 #define CODA_MAXNAMLEN 255
     90 #define CODA_MAXPATHLEN 1024
     91 #define CODA_MAXSYMLINK 10
     92 #define C_O_READ 0x001
     93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     94 #define C_O_WRITE 0x002
     95 #define C_O_TRUNC 0x010
     96 #define C_O_EXCL 0x100
     97 #define C_O_CREAT 0x200
     98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     99 #define C_M_READ 00400
    100 #define C_M_WRITE 00200
    101 #define C_A_C_OK 8
    102 #define C_A_R_OK 4
    103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    104 #define C_A_W_OK 2
    105 #define C_A_X_OK 1
    106 #define C_A_F_OK 0
    107 #ifndef _VENUS_DIRENT_T_
    108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    109 #define _VENUS_DIRENT_T_ 1
    110 struct venus_dirent {
    111   u_int32_t d_fileno;
    112   u_int16_t d_reclen;
    113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    114   u_int8_t d_type;
    115   u_int8_t d_namlen;
    116   char d_name[CODA_MAXNAMLEN + 1];
    117 };
    118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    119 #undef DIRSIZ
    120 #define DIRSIZ(dp) ((sizeof(struct venus_dirent) - (CODA_MAXNAMLEN + 1)) + (((dp)->d_namlen + 1 + 3) & ~3))
    121 #define CDT_UNKNOWN 0
    122 #define CDT_FIFO 1
    123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    124 #define CDT_CHR 2
    125 #define CDT_DIR 4
    126 #define CDT_BLK 6
    127 #define CDT_REG 8
    128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    129 #define CDT_LNK 10
    130 #define CDT_SOCK 12
    131 #define CDT_WHT 14
    132 #define IFTOCDT(mode) (((mode) & 0170000) >> 12)
    133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    134 #define CDTTOIF(dirtype) ((dirtype) << 12)
    135 #endif
    136 #ifndef _VUID_T_
    137 #define _VUID_T_
    138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    139 typedef u_int32_t vuid_t;
    140 typedef u_int32_t vgid_t;
    141 #endif
    142 struct CodaFid {
    143 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    144   u_int32_t opaque[4];
    145 };
    146 #define coda_f2i(fid) (fid ? (fid->opaque[3] ^ (fid->opaque[2] << 10) ^ (fid->opaque[1] << 20) ^ fid->opaque[0]) : 0)
    147 #ifndef _VENUS_VATTR_T_
    148 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    149 #define _VENUS_VATTR_T_
    150 enum coda_vtype {
    151   C_VNON,
    152   C_VREG,
    153 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    154   C_VDIR,
    155   C_VBLK,
    156   C_VCHR,
    157   C_VLNK,
    158 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    159   C_VSOCK,
    160   C_VFIFO,
    161   C_VBAD
    162 };
    163 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    164 struct coda_vattr {
    165   long va_type;
    166   u_short va_mode;
    167   short va_nlink;
    168 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    169   vuid_t va_uid;
    170   vgid_t va_gid;
    171   long va_fileid;
    172   u_quad_t va_size;
    173 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    174   long va_blocksize;
    175   struct timespec va_atime;
    176   struct timespec va_mtime;
    177   struct timespec va_ctime;
    178 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    179   u_long va_gen;
    180   u_long va_flags;
    181   cdev_t va_rdev;
    182   u_quad_t va_bytes;
    183 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    184   u_quad_t va_filerev;
    185 };
    186 #endif
    187 struct coda_statfs {
    188 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    189   int32_t f_blocks;
    190   int32_t f_bfree;
    191   int32_t f_bavail;
    192   int32_t f_files;
    193 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    194   int32_t f_ffree;
    195 };
    196 #define CODA_ROOT 2
    197 #define CODA_OPEN_BY_FD 3
    198 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    199 #define CODA_OPEN 4
    200 #define CODA_CLOSE 5
    201 #define CODA_IOCTL 6
    202 #define CODA_GETATTR 7
    203 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    204 #define CODA_SETATTR 8
    205 #define CODA_ACCESS 9
    206 #define CODA_LOOKUP 10
    207 #define CODA_CREATE 11
    208 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    209 #define CODA_REMOVE 12
    210 #define CODA_LINK 13
    211 #define CODA_RENAME 14
    212 #define CODA_MKDIR 15
    213 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    214 #define CODA_RMDIR 16
    215 #define CODA_SYMLINK 18
    216 #define CODA_READLINK 19
    217 #define CODA_FSYNC 20
    218 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    219 #define CODA_VGET 22
    220 #define CODA_SIGNAL 23
    221 #define CODA_REPLACE 24
    222 #define CODA_FLUSH 25
    223 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    224 #define CODA_PURGEUSER 26
    225 #define CODA_ZAPFILE 27
    226 #define CODA_ZAPDIR 28
    227 #define CODA_PURGEFID 30
    228 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    229 #define CODA_OPEN_BY_PATH 31
    230 #define CODA_RESOLVE 32
    231 #define CODA_REINTEGRATE 33
    232 #define CODA_STATFS 34
    233 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    234 #define CODA_STORE 35
    235 #define CODA_RELEASE 36
    236 #define CODA_NCALLS 37
    237 #define DOWNCALL(opcode) (opcode >= CODA_REPLACE && opcode <= CODA_PURGEFID)
    238 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    239 #define VC_MAXDATASIZE 8192
    240 #define VC_MAXMSGSIZE sizeof(union inputArgs) + sizeof(union outputArgs) + VC_MAXDATASIZE
    241 #define CIOC_KERNEL_VERSION _IOWR('c', 10, size_t)
    242 #define CODA_KERNEL_VERSION 3
    243 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    244 struct coda_in_hdr {
    245   u_int32_t opcode;
    246   u_int32_t unique;
    247   pid_t pid;
    248 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    249   pid_t pgid;
    250   vuid_t uid;
    251 };
    252 struct coda_out_hdr {
    253 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    254   u_int32_t opcode;
    255   u_int32_t unique;
    256   u_int32_t result;
    257 };
    258 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    259 struct coda_root_out {
    260   struct coda_out_hdr oh;
    261   struct CodaFid VFid;
    262 };
    263 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    264 struct coda_root_in {
    265   struct coda_in_hdr in;
    266 };
    267 struct coda_open_in {
    268 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    269   struct coda_in_hdr ih;
    270   struct CodaFid VFid;
    271   int flags;
    272 };
    273 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    274 struct coda_open_out {
    275   struct coda_out_hdr oh;
    276   cdev_t dev;
    277   ino_t inode;
    278 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    279 };
    280 struct coda_store_in {
    281   struct coda_in_hdr ih;
    282   struct CodaFid VFid;
    283 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    284   int flags;
    285 };
    286 struct coda_store_out {
    287   struct coda_out_hdr out;
    288 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    289 };
    290 struct coda_release_in {
    291   struct coda_in_hdr ih;
    292   struct CodaFid VFid;
    293 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    294   int flags;
    295 };
    296 struct coda_release_out {
    297   struct coda_out_hdr out;
    298 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    299 };
    300 struct coda_close_in {
    301   struct coda_in_hdr ih;
    302   struct CodaFid VFid;
    303 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    304   int flags;
    305 };
    306 struct coda_close_out {
    307   struct coda_out_hdr out;
    308 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    309 };
    310 struct coda_ioctl_in {
    311   struct coda_in_hdr ih;
    312   struct CodaFid VFid;
    313 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    314   int cmd;
    315   int len;
    316   int rwflag;
    317   char * data;
    318 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    319 };
    320 struct coda_ioctl_out {
    321   struct coda_out_hdr oh;
    322   int len;
    323 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    324   caddr_t data;
    325 };
    326 struct coda_getattr_in {
    327   struct coda_in_hdr ih;
    328 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    329   struct CodaFid VFid;
    330 };
    331 struct coda_getattr_out {
    332   struct coda_out_hdr oh;
    333 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    334   struct coda_vattr attr;
    335 };
    336 struct coda_setattr_in {
    337   struct coda_in_hdr ih;
    338 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    339   struct CodaFid VFid;
    340   struct coda_vattr attr;
    341 };
    342 struct coda_setattr_out {
    343 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    344   struct coda_out_hdr out;
    345 };
    346 struct coda_access_in {
    347   struct coda_in_hdr ih;
    348 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    349   struct CodaFid VFid;
    350   int flags;
    351 };
    352 struct coda_access_out {
    353 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    354   struct coda_out_hdr out;
    355 };
    356 #define CLU_CASE_SENSITIVE 0x01
    357 #define CLU_CASE_INSENSITIVE 0x02
    358 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    359 struct coda_lookup_in {
    360   struct coda_in_hdr ih;
    361   struct CodaFid VFid;
    362   int name;
    363 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    364   int flags;
    365 };
    366 struct coda_lookup_out {
    367   struct coda_out_hdr oh;
    368 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    369   struct CodaFid VFid;
    370   int vtype;
    371 };
    372 struct coda_create_in {
    373 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    374   struct coda_in_hdr ih;
    375   struct CodaFid VFid;
    376   struct coda_vattr attr;
    377   int excl;
    378 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    379   int mode;
    380   int name;
    381 };
    382 struct coda_create_out {
    383 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    384   struct coda_out_hdr oh;
    385   struct CodaFid VFid;
    386   struct coda_vattr attr;
    387 };
    388 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    389 struct coda_remove_in {
    390   struct coda_in_hdr ih;
    391   struct CodaFid VFid;
    392   int name;
    393 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    394 };
    395 struct coda_remove_out {
    396   struct coda_out_hdr out;
    397 };
    398 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    399 struct coda_link_in {
    400   struct coda_in_hdr ih;
    401   struct CodaFid sourceFid;
    402   struct CodaFid destFid;
    403 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    404   int tname;
    405 };
    406 struct coda_link_out {
    407   struct coda_out_hdr out;
    408 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    409 };
    410 struct coda_rename_in {
    411   struct coda_in_hdr ih;
    412   struct CodaFid sourceFid;
    413 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    414   int srcname;
    415   struct CodaFid destFid;
    416   int destname;
    417 };
    418 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    419 struct coda_rename_out {
    420   struct coda_out_hdr out;
    421 };
    422 struct coda_mkdir_in {
    423 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    424   struct coda_in_hdr ih;
    425   struct CodaFid VFid;
    426   struct coda_vattr attr;
    427   int name;
    428 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    429 };
    430 struct coda_mkdir_out {
    431   struct coda_out_hdr oh;
    432   struct CodaFid VFid;
    433 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    434   struct coda_vattr attr;
    435 };
    436 struct coda_rmdir_in {
    437   struct coda_in_hdr ih;
    438 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    439   struct CodaFid VFid;
    440   int name;
    441 };
    442 struct coda_rmdir_out {
    443 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    444   struct coda_out_hdr out;
    445 };
    446 struct coda_symlink_in {
    447   struct coda_in_hdr ih;
    448 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    449   struct CodaFid VFid;
    450   int srcname;
    451   struct coda_vattr attr;
    452   int tname;
    453 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    454 };
    455 struct coda_symlink_out {
    456   struct coda_out_hdr out;
    457 };
    458 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    459 struct coda_readlink_in {
    460   struct coda_in_hdr ih;
    461   struct CodaFid VFid;
    462 };
    463 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    464 struct coda_readlink_out {
    465   struct coda_out_hdr oh;
    466   int count;
    467   caddr_t data;
    468 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    469 };
    470 struct coda_fsync_in {
    471   struct coda_in_hdr ih;
    472   struct CodaFid VFid;
    473 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    474 };
    475 struct coda_fsync_out {
    476   struct coda_out_hdr out;
    477 };
    478 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    479 struct coda_vget_in {
    480   struct coda_in_hdr ih;
    481   struct CodaFid VFid;
    482 };
    483 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    484 struct coda_vget_out {
    485   struct coda_out_hdr oh;
    486   struct CodaFid VFid;
    487   int vtype;
    488 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    489 };
    490 struct coda_purgeuser_out {
    491   struct coda_out_hdr oh;
    492   vuid_t uid;
    493 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    494 };
    495 struct coda_zapfile_out {
    496   struct coda_out_hdr oh;
    497   struct CodaFid CodaFid;
    498 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    499 };
    500 struct coda_zapdir_out {
    501   struct coda_out_hdr oh;
    502   struct CodaFid CodaFid;
    503 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    504 };
    505 struct coda_purgefid_out {
    506   struct coda_out_hdr oh;
    507   struct CodaFid CodaFid;
    508 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    509 };
    510 struct coda_replace_out {
    511   struct coda_out_hdr oh;
    512   struct CodaFid NewFid;
    513 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    514   struct CodaFid OldFid;
    515 };
    516 struct coda_open_by_fd_in {
    517   struct coda_in_hdr ih;
    518 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    519   struct CodaFid VFid;
    520   int flags;
    521 };
    522 struct coda_open_by_fd_out {
    523 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    524   struct coda_out_hdr oh;
    525   int fd;
    526 };
    527 struct coda_open_by_path_in {
    528 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    529   struct coda_in_hdr ih;
    530   struct CodaFid VFid;
    531   int flags;
    532 };
    533 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    534 struct coda_open_by_path_out {
    535   struct coda_out_hdr oh;
    536   int path;
    537 };
    538 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    539 struct coda_statfs_in {
    540   struct coda_in_hdr in;
    541 };
    542 struct coda_statfs_out {
    543 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    544   struct coda_out_hdr oh;
    545   struct coda_statfs stat;
    546 };
    547 #define CODA_NOCACHE 0x80000000
    548 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    549 union inputArgs {
    550   struct coda_in_hdr ih;
    551   struct coda_open_in coda_open;
    552   struct coda_store_in coda_store;
    553 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    554   struct coda_release_in coda_release;
    555   struct coda_close_in coda_close;
    556   struct coda_ioctl_in coda_ioctl;
    557   struct coda_getattr_in coda_getattr;
    558 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    559   struct coda_setattr_in coda_setattr;
    560   struct coda_access_in coda_access;
    561   struct coda_lookup_in coda_lookup;
    562   struct coda_create_in coda_create;
    563 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    564   struct coda_remove_in coda_remove;
    565   struct coda_link_in coda_link;
    566   struct coda_rename_in coda_rename;
    567   struct coda_mkdir_in coda_mkdir;
    568 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    569   struct coda_rmdir_in coda_rmdir;
    570   struct coda_symlink_in coda_symlink;
    571   struct coda_readlink_in coda_readlink;
    572   struct coda_fsync_in coda_fsync;
    573 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    574   struct coda_vget_in coda_vget;
    575   struct coda_open_by_fd_in coda_open_by_fd;
    576   struct coda_open_by_path_in coda_open_by_path;
    577   struct coda_statfs_in coda_statfs;
    578 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    579 };
    580 union outputArgs {
    581   struct coda_out_hdr oh;
    582   struct coda_root_out coda_root;
    583 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    584   struct coda_open_out coda_open;
    585   struct coda_ioctl_out coda_ioctl;
    586   struct coda_getattr_out coda_getattr;
    587   struct coda_lookup_out coda_lookup;
    588 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    589   struct coda_create_out coda_create;
    590   struct coda_mkdir_out coda_mkdir;
    591   struct coda_readlink_out coda_readlink;
    592   struct coda_vget_out coda_vget;
    593 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    594   struct coda_purgeuser_out coda_purgeuser;
    595   struct coda_zapfile_out coda_zapfile;
    596   struct coda_zapdir_out coda_zapdir;
    597   struct coda_purgefid_out coda_purgefid;
    598 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    599   struct coda_replace_out coda_replace;
    600   struct coda_open_by_fd_out coda_open_by_fd;
    601   struct coda_open_by_path_out coda_open_by_path;
    602   struct coda_statfs_out coda_statfs;
    603 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    604 };
    605 union coda_downcalls {
    606   struct coda_purgeuser_out purgeuser;
    607   struct coda_zapfile_out zapfile;
    608 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    609   struct coda_zapdir_out zapdir;
    610   struct coda_purgefid_out purgefid;
    611   struct coda_replace_out replace;
    612 };
    613 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    614 #define PIOCPARM_MASK 0x0000ffff
    615 struct ViceIoctl {
    616   void __user * in;
    617   void __user * out;
    618 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    619   u_short in_size;
    620   u_short out_size;
    621 };
    622 struct PioctlData {
    623 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    624   const char __user * path;
    625   int follow;
    626   struct ViceIoctl vi;
    627 };
    628 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    629 #define CODA_CONTROL ".CONTROL"
    630 #define CODA_CONTROLLEN 8
    631 #define CTL_INO - 1
    632 #define CODA_MOUNT_VERSION 1
    633 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    634 struct coda_mount_data {
    635   int version;
    636   int fd;
    637 };
    638 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    639 #endif
    640