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