libkvm - Update for new dumps & minidumps
[dragonfly.git] / include / rpcsvc / nfs_prot.h
1 /*
2  * Please do not edit this file.
3  * It was generated using rpcgen.
4  */
5
6 #ifndef _NFS_PROT_H_RPCGEN
7 #define _NFS_PROT_H_RPCGEN
8
9 #include <rpc/rpc.h>
10
11 #ifdef __cplusplus
12 extern "C" {
13 #endif
14
15 #define NFS_PORT 2049
16 #define NFS_MAXDATA 8192
17 #define NFS_MAXPATHLEN 1024
18 #define NFS_MAXNAMLEN 255
19 #define NFS_FHSIZE 32
20 #define NFS_COOKIESIZE 4
21 #define NFS_FIFO_DEV -1
22 #define NFSMODE_FMT 0170000
23 #define NFSMODE_DIR 0040000
24 #define NFSMODE_CHR 0020000
25 #define NFSMODE_BLK 0060000
26 #define NFSMODE_REG 0100000
27 #define NFSMODE_LNK 0120000
28 #define NFSMODE_SOCK 0140000
29 #define NFSMODE_FIFO 0010000
30
31 enum nfsstat {
32         NFS_OK = 0,
33         NFSERR_PERM = 1,
34         NFSERR_NOENT = 2,
35         NFSERR_IO = 5,
36         NFSERR_NXIO = 6,
37         NFSERR_ACCES = 13,
38         NFSERR_EXIST = 17,
39         NFSERR_NODEV = 19,
40         NFSERR_NOTDIR = 20,
41         NFSERR_ISDIR = 21,
42         NFSERR_FBIG = 27,
43         NFSERR_NOSPC = 28,
44         NFSERR_ROFS = 30,
45         NFSERR_NAMETOOLONG = 63,
46         NFSERR_NOTEMPTY = 66,
47         NFSERR_DQUOT = 69,
48         NFSERR_STALE = 70,
49         NFSERR_WFLUSH = 99
50 };
51 typedef enum nfsstat nfsstat;
52
53 enum ftype {
54         NFNON = 0,
55         NFREG = 1,
56         NFDIR = 2,
57         NFBLK = 3,
58         NFCHR = 4,
59         NFLNK = 5,
60         NFSOCK = 6,
61         NFBAD = 7,
62         NFFIFO = 8
63 };
64 typedef enum ftype ftype;
65
66 struct nfs_fh {
67         char data[NFS_FHSIZE];
68 };
69 typedef struct nfs_fh nfs_fh;
70
71 struct nfstime {
72         u_int seconds;
73         u_int useconds;
74 };
75 typedef struct nfstime nfstime;
76
77 struct fattr {
78         ftype type;
79         u_int mode;
80         u_int nlink;
81         u_int uid;
82         u_int gid;
83         u_int size;
84         u_int blocksize;
85         u_int rdev;
86         u_int blocks;
87         u_int fsid;
88         u_int fileid;
89         nfstime atime;
90         nfstime mtime;
91         nfstime ctime;
92 };
93 typedef struct fattr fattr;
94
95 struct sattr {
96         u_int mode;
97         u_int uid;
98         u_int gid;
99         u_int size;
100         nfstime atime;
101         nfstime mtime;
102 };
103 typedef struct sattr sattr;
104
105 typedef char *filename;
106
107 typedef char *nfspath;
108
109 struct attrstat {
110         nfsstat status;
111         union {
112                 fattr attributes;
113         } attrstat_u;
114 };
115 typedef struct attrstat attrstat;
116
117 struct sattrargs {
118         nfs_fh file;
119         sattr attributes;
120 };
121 typedef struct sattrargs sattrargs;
122
123 struct diropargs {
124         nfs_fh dir;
125         filename name;
126 };
127 typedef struct diropargs diropargs;
128
129 struct diropokres {
130         nfs_fh file;
131         fattr attributes;
132 };
133 typedef struct diropokres diropokres;
134
135 struct diropres {
136         nfsstat status;
137         union {
138                 diropokres diropres;
139         } diropres_u;
140 };
141 typedef struct diropres diropres;
142
143 struct readlinkres {
144         nfsstat status;
145         union {
146                 nfspath data;
147         } readlinkres_u;
148 };
149 typedef struct readlinkres readlinkres;
150
151 struct readargs {
152         nfs_fh file;
153         u_int offset;
154         u_int count;
155         u_int totalcount;
156 };
157 typedef struct readargs readargs;
158
159 struct readokres {
160         fattr attributes;
161         struct {
162                 u_int data_len;
163                 char *data_val;
164         } data;
165 };
166 typedef struct readokres readokres;
167
168 struct readres {
169         nfsstat status;
170         union {
171                 readokres reply;
172         } readres_u;
173 };
174 typedef struct readres readres;
175
176 struct writeargs {
177         nfs_fh file;
178         u_int beginoffset;
179         u_int offset;
180         u_int totalcount;
181         struct {
182                 u_int data_len;
183                 char *data_val;
184         } data;
185 };
186 typedef struct writeargs writeargs;
187
188 struct createargs {
189         diropargs where;
190         sattr attributes;
191 };
192 typedef struct createargs createargs;
193
194 struct renameargs {
195         diropargs from;
196         diropargs to;
197 };
198 typedef struct renameargs renameargs;
199
200 struct linkargs {
201         nfs_fh from;
202         diropargs to;
203 };
204 typedef struct linkargs linkargs;
205
206 struct symlinkargs {
207         diropargs from;
208         nfspath to;
209         sattr attributes;
210 };
211 typedef struct symlinkargs symlinkargs;
212
213 typedef char nfscookie[NFS_COOKIESIZE];
214
215 struct readdirargs {
216         nfs_fh dir;
217         nfscookie cookie;
218         u_int count;
219 };
220 typedef struct readdirargs readdirargs;
221
222 struct entry {
223         u_int fileid;
224         filename name;
225         nfscookie cookie;
226         struct entry *nextentry;
227 };
228 typedef struct entry entry;
229
230 struct dirlist {
231         entry *entries;
232         bool_t eof;
233 };
234 typedef struct dirlist dirlist;
235
236 struct readdirres {
237         nfsstat status;
238         union {
239                 dirlist reply;
240         } readdirres_u;
241 };
242 typedef struct readdirres readdirres;
243
244 struct statfsokres {
245         u_int tsize;
246         u_int bsize;
247         u_int blocks;
248         u_int bfree;
249         u_int bavail;
250 };
251 typedef struct statfsokres statfsokres;
252
253 struct statfsres {
254         nfsstat status;
255         union {
256                 statfsokres reply;
257         } statfsres_u;
258 };
259 typedef struct statfsres statfsres;
260 #define NFS3_FHSIZE 64
261 #define NFS3_COOKIEVERFSIZE 8
262 #define NFS3_CREATEVERFSIZE 8
263 #define NFS3_WRITEVERFSIZE 8
264
265 typedef u_int64_t uint64;
266
267 typedef int64_t int64;
268
269 typedef u_long uint32;
270
271 typedef long int32;
272
273 typedef char *filename3;
274
275 typedef char *nfspath3;
276
277 typedef uint64 fileid3;
278
279 typedef uint64 cookie3;
280
281 typedef char cookieverf3[NFS3_COOKIEVERFSIZE];
282
283 typedef char createverf3[NFS3_CREATEVERFSIZE];
284
285 typedef char writeverf3[NFS3_WRITEVERFSIZE];
286
287 typedef uint32 uid3;
288
289 typedef uint32 gid3;
290
291 typedef uint64 size3;
292
293 typedef uint64 offset3;
294
295 typedef uint32 mode3;
296
297 typedef uint32 count3;
298
299 enum nfsstat3 {
300         NFS3_OK = 0,
301         NFS3ERR_PERM = 1,
302         NFS3ERR_NOENT = 2,
303         NFS3ERR_IO = 5,
304         NFS3ERR_NXIO = 6,
305         NFS3ERR_ACCES = 13,
306         NFS3ERR_EXIST = 17,
307         NFS3ERR_XDEV = 18,
308         NFS3ERR_NODEV = 19,
309         NFS3ERR_NOTDIR = 20,
310         NFS3ERR_ISDIR = 21,
311         NFS3ERR_INVAL = 22,
312         NFS3ERR_FBIG = 27,
313         NFS3ERR_NOSPC = 28,
314         NFS3ERR_ROFS = 30,
315         NFS3ERR_MLINK = 31,
316         NFS3ERR_NAMETOOLONG = 63,
317         NFS3ERR_NOTEMPTY = 66,
318         NFS3ERR_DQUOT = 69,
319         NFS3ERR_STALE = 70,
320         NFS3ERR_REMOTE = 71,
321         NFS3ERR_BADHANDLE = 10001,
322         NFS3ERR_NOT_SYNC = 10002,
323         NFS3ERR_BAD_COOKIE = 10003,
324         NFS3ERR_NOTSUPP = 10004,
325         NFS3ERR_TOOSMALL = 10005,
326         NFS3ERR_SERVERFAULT = 10006,
327         NFS3ERR_BADTYPE = 10007,
328         NFS3ERR_JUKEBOX = 10008
329 };
330 typedef enum nfsstat3 nfsstat3;
331
332 enum ftype3 {
333         NF3REG = 1,
334         NF3DIR = 2,
335         NF3BLK = 3,
336         NF3CHR = 4,
337         NF3LNK = 5,
338         NF3SOCK = 6,
339         NF3FIFO = 7
340 };
341 typedef enum ftype3 ftype3;
342
343 struct specdata3 {
344         uint32 specdata1;
345         uint32 specdata2;
346 };
347 typedef struct specdata3 specdata3;
348
349 struct nfs_fh3 {
350         struct {
351                 u_int data_len;
352                 char *data_val;
353         } data;
354 };
355 typedef struct nfs_fh3 nfs_fh3;
356
357 struct nfstime3 {
358         uint32 seconds;
359         uint32 nseconds;
360 };
361 typedef struct nfstime3 nfstime3;
362
363 struct fattr3 {
364         ftype3 type;
365         mode3 mode;
366         uint32 nlink;
367         uid3 uid;
368         gid3 gid;
369         size3 size;
370         size3 used;
371         specdata3 rdev;
372         uint64 fsid;
373         fileid3 fileid;
374         nfstime3 atime;
375         nfstime3 mtime;
376         nfstime3 ctime;
377 };
378 typedef struct fattr3 fattr3;
379
380 struct post_op_attr {
381         bool_t attributes_follow;
382         union {
383                 fattr3 attributes;
384         } post_op_attr_u;
385 };
386 typedef struct post_op_attr post_op_attr;
387
388 struct wcc_attr {
389         size3 size;
390         nfstime3 mtime;
391         nfstime3 ctime;
392 };
393 typedef struct wcc_attr wcc_attr;
394
395 struct pre_op_attr {
396         bool_t attributes_follow;
397         union {
398                 wcc_attr attributes;
399         } pre_op_attr_u;
400 };
401 typedef struct pre_op_attr pre_op_attr;
402
403 struct wcc_data {
404         pre_op_attr before;
405         post_op_attr after;
406 };
407 typedef struct wcc_data wcc_data;
408
409 struct post_op_fh3 {
410         bool_t handle_follows;
411         union {
412                 nfs_fh3 handle;
413         } post_op_fh3_u;
414 };
415 typedef struct post_op_fh3 post_op_fh3;
416
417 enum time_how {
418         DONT_CHANGE = 0,
419         SET_TO_SERVER_TIME = 1,
420         SET_TO_CLIENT_TIME = 2
421 };
422 typedef enum time_how time_how;
423
424 struct set_mode3 {
425         bool_t set_it;
426         union {
427                 mode3 mode;
428         } set_mode3_u;
429 };
430 typedef struct set_mode3 set_mode3;
431
432 struct set_uid3 {
433         bool_t set_it;
434         union {
435                 uid3 uid;
436         } set_uid3_u;
437 };
438 typedef struct set_uid3 set_uid3;
439
440 struct set_gid3 {
441         bool_t set_it;
442         union {
443                 gid3 gid;
444         } set_gid3_u;
445 };
446 typedef struct set_gid3 set_gid3;
447
448 struct set_size3 {
449         bool_t set_it;
450         union {
451                 size3 size;
452         } set_size3_u;
453 };
454 typedef struct set_size3 set_size3;
455
456 struct set_atime {
457         time_how set_it;
458         union {
459                 nfstime3 atime;
460         } set_atime_u;
461 };
462 typedef struct set_atime set_atime;
463
464 struct set_mtime {
465         time_how set_it;
466         union {
467                 nfstime3 mtime;
468         } set_mtime_u;
469 };
470 typedef struct set_mtime set_mtime;
471
472 struct sattr3 {
473         set_mode3 mode;
474         set_uid3 uid;
475         set_gid3 gid;
476         set_size3 size;
477         set_atime atime;
478         set_mtime mtime;
479 };
480 typedef struct sattr3 sattr3;
481
482 struct diropargs3 {
483         nfs_fh3 dir;
484         filename3 name;
485 };
486 typedef struct diropargs3 diropargs3;
487
488 struct GETATTR3args {
489         nfs_fh3 object;
490 };
491 typedef struct GETATTR3args GETATTR3args;
492
493 struct GETATTR3resok {
494         fattr3 obj_attributes;
495 };
496 typedef struct GETATTR3resok GETATTR3resok;
497
498 struct GETATTR3res {
499         nfsstat3 status;
500         union {
501                 GETATTR3resok resok;
502         } GETATTR3res_u;
503 };
504 typedef struct GETATTR3res GETATTR3res;
505
506 struct sattrguard3 {
507         bool_t check;
508         union {
509                 nfstime3 obj_ctime;
510         } sattrguard3_u;
511 };
512 typedef struct sattrguard3 sattrguard3;
513
514 struct SETATTR3args {
515         nfs_fh3 object;
516         sattr3 new_attributes;
517         sattrguard3 guard;
518 };
519 typedef struct SETATTR3args SETATTR3args;
520
521 struct SETATTR3resok {
522         wcc_data obj_wcc;
523 };
524 typedef struct SETATTR3resok SETATTR3resok;
525
526 struct SETATTR3resfail {
527         wcc_data obj_wcc;
528 };
529 typedef struct SETATTR3resfail SETATTR3resfail;
530
531 struct SETATTR3res {
532         nfsstat3 status;
533         union {
534                 SETATTR3resok resok;
535                 SETATTR3resfail resfail;
536         } SETATTR3res_u;
537 };
538 typedef struct SETATTR3res SETATTR3res;
539
540 struct LOOKUP3args {
541         diropargs3 what;
542 };
543 typedef struct LOOKUP3args LOOKUP3args;
544
545 struct LOOKUP3resok {
546         nfs_fh3 object;
547         post_op_attr obj_attributes;
548         post_op_attr dir_attributes;
549 };
550 typedef struct LOOKUP3resok LOOKUP3resok;
551
552 struct LOOKUP3resfail {
553         post_op_attr dir_attributes;
554 };
555 typedef struct LOOKUP3resfail LOOKUP3resfail;
556
557 struct LOOKUP3res {
558         nfsstat3 status;
559         union {
560                 LOOKUP3resok resok;
561                 LOOKUP3resfail resfail;
562         } LOOKUP3res_u;
563 };
564 typedef struct LOOKUP3res LOOKUP3res;
565 #define ACCESS3_READ 0x0001
566 #define ACCESS3_LOOKUP 0x0002
567 #define ACCESS3_MODIFY 0x0004
568 #define ACCESS3_EXTEND 0x0008
569 #define ACCESS3_DELETE 0x0010
570 #define ACCESS3_EXECUTE 0x0020
571
572 struct ACCESS3args {
573         nfs_fh3 object;
574         uint32 access;
575 };
576 typedef struct ACCESS3args ACCESS3args;
577
578 struct ACCESS3resok {
579         post_op_attr obj_attributes;
580         uint32 access;
581 };
582 typedef struct ACCESS3resok ACCESS3resok;
583
584 struct ACCESS3resfail {
585         post_op_attr obj_attributes;
586 };
587 typedef struct ACCESS3resfail ACCESS3resfail;
588
589 struct ACCESS3res {
590         nfsstat3 status;
591         union {
592                 ACCESS3resok resok;
593                 ACCESS3resfail resfail;
594         } ACCESS3res_u;
595 };
596 typedef struct ACCESS3res ACCESS3res;
597
598 struct READLINK3args {
599         nfs_fh3 symlink;
600 };
601 typedef struct READLINK3args READLINK3args;
602
603 struct READLINK3resok {
604         post_op_attr symlink_attributes;
605         nfspath3 data;
606 };
607 typedef struct READLINK3resok READLINK3resok;
608
609 struct READLINK3resfail {
610         post_op_attr symlink_attributes;
611 };
612 typedef struct READLINK3resfail READLINK3resfail;
613
614 struct READLINK3res {
615         nfsstat3 status;
616         union {
617                 READLINK3resok resok;
618                 READLINK3resfail resfail;
619         } READLINK3res_u;
620 };
621 typedef struct READLINK3res READLINK3res;
622
623 struct READ3args {
624         nfs_fh3 file;
625         offset3 offset;
626         count3 count;
627 };
628 typedef struct READ3args READ3args;
629
630 struct READ3resok {
631         post_op_attr file_attributes;
632         count3 count;
633         bool_t eof;
634         struct {
635                 u_int data_len;
636                 char *data_val;
637         } data;
638 };
639 typedef struct READ3resok READ3resok;
640
641 struct READ3resfail {
642         post_op_attr file_attributes;
643 };
644 typedef struct READ3resfail READ3resfail;
645
646 struct READ3res {
647         nfsstat3 status;
648         union {
649                 READ3resok resok;
650                 READ3resfail resfail;
651         } READ3res_u;
652 };
653 typedef struct READ3res READ3res;
654
655 enum stable_how {
656         UNSTABLE = 0,
657         DATA_SYNC = 1,
658         FILE_SYNC = 2
659 };
660 typedef enum stable_how stable_how;
661
662 struct WRITE3args {
663         nfs_fh3 file;
664         offset3 offset;
665         count3 count;
666         stable_how stable;
667         struct {
668                 u_int data_len;
669                 char *data_val;
670         } data;
671 };
672 typedef struct WRITE3args WRITE3args;
673
674 struct WRITE3resok {
675         wcc_data file_wcc;
676         count3 count;
677         stable_how committed;
678         writeverf3 verf;
679 };
680 typedef struct WRITE3resok WRITE3resok;
681
682 struct WRITE3resfail {
683         wcc_data file_wcc;
684 };
685 typedef struct WRITE3resfail WRITE3resfail;
686
687 struct WRITE3res {
688         nfsstat3 status;
689         union {
690                 WRITE3resok resok;
691                 WRITE3resfail resfail;
692         } WRITE3res_u;
693 };
694 typedef struct WRITE3res WRITE3res;
695
696 enum createmode3 {
697         UNCHECKED = 0,
698         GUARDED = 1,
699         EXCLUSIVE = 2
700 };
701 typedef enum createmode3 createmode3;
702
703 struct createhow3 {
704         createmode3 mode;
705         union {
706                 sattr3 obj_attributes;
707                 createverf3 verf;
708         } createhow3_u;
709 };
710 typedef struct createhow3 createhow3;
711
712 struct CREATE3args {
713         diropargs3 where;
714         createhow3 how;
715 };
716 typedef struct CREATE3args CREATE3args;
717
718 struct CREATE3resok {
719         post_op_fh3 obj;
720         post_op_attr obj_attributes;
721         wcc_data dir_wcc;
722 };
723 typedef struct CREATE3resok CREATE3resok;
724
725 struct CREATE3resfail {
726         wcc_data dir_wcc;
727 };
728 typedef struct CREATE3resfail CREATE3resfail;
729
730 struct CREATE3res {
731         nfsstat3 status;
732         union {
733                 CREATE3resok resok;
734                 CREATE3resfail resfail;
735         } CREATE3res_u;
736 };
737 typedef struct CREATE3res CREATE3res;
738
739 struct MKDIR3args {
740         diropargs3 where;
741         sattr3 attributes;
742 };
743 typedef struct MKDIR3args MKDIR3args;
744
745 struct MKDIR3resok {
746         post_op_fh3 obj;
747         post_op_attr obj_attributes;
748         wcc_data dir_wcc;
749 };
750 typedef struct MKDIR3resok MKDIR3resok;
751
752 struct MKDIR3resfail {
753         wcc_data dir_wcc;
754 };
755 typedef struct MKDIR3resfail MKDIR3resfail;
756
757 struct MKDIR3res {
758         nfsstat3 status;
759         union {
760                 MKDIR3resok resok;
761                 MKDIR3resfail resfail;
762         } MKDIR3res_u;
763 };
764 typedef struct MKDIR3res MKDIR3res;
765
766 struct symlinkdata3 {
767         sattr3 symlink_attributes;
768         nfspath3 symlink_data;
769 };
770 typedef struct symlinkdata3 symlinkdata3;
771
772 struct SYMLINK3args {
773         diropargs3 where;
774         symlinkdata3 symlink;
775 };
776 typedef struct SYMLINK3args SYMLINK3args;
777
778 struct SYMLINK3resok {
779         post_op_fh3 obj;
780         post_op_attr obj_attributes;
781         wcc_data dir_wcc;
782 };
783 typedef struct SYMLINK3resok SYMLINK3resok;
784
785 struct SYMLINK3resfail {
786         wcc_data dir_wcc;
787 };
788 typedef struct SYMLINK3resfail SYMLINK3resfail;
789
790 struct SYMLINK3res {
791         nfsstat3 status;
792         union {
793                 SYMLINK3resok resok;
794                 SYMLINK3resfail resfail;
795         } SYMLINK3res_u;
796 };
797 typedef struct SYMLINK3res SYMLINK3res;
798
799 struct devicedata3 {
800         sattr3 dev_attributes;
801         specdata3 spec;
802 };
803 typedef struct devicedata3 devicedata3;
804
805 struct mknoddata3 {
806         ftype3 type;
807         union {
808                 devicedata3 device;
809                 sattr3 pipe_attributes;
810         } mknoddata3_u;
811 };
812 typedef struct mknoddata3 mknoddata3;
813
814 struct MKNOD3args {
815         diropargs3 where;
816         mknoddata3 what;
817 };
818 typedef struct MKNOD3args MKNOD3args;
819
820 struct MKNOD3resok {
821         post_op_fh3 obj;
822         post_op_attr obj_attributes;
823         wcc_data dir_wcc;
824 };
825 typedef struct MKNOD3resok MKNOD3resok;
826
827 struct MKNOD3resfail {
828         wcc_data dir_wcc;
829 };
830 typedef struct MKNOD3resfail MKNOD3resfail;
831
832 struct MKNOD3res {
833         nfsstat3 status;
834         union {
835                 MKNOD3resok resok;
836                 MKNOD3resfail resfail;
837         } MKNOD3res_u;
838 };
839 typedef struct MKNOD3res MKNOD3res;
840
841 struct REMOVE3args {
842         diropargs3 object;
843 };
844 typedef struct REMOVE3args REMOVE3args;
845
846 struct REMOVE3resok {
847         wcc_data dir_wcc;
848 };
849 typedef struct REMOVE3resok REMOVE3resok;
850
851 struct REMOVE3resfail {
852         wcc_data dir_wcc;
853 };
854 typedef struct REMOVE3resfail REMOVE3resfail;
855
856 struct REMOVE3res {
857         nfsstat3 status;
858         union {
859                 REMOVE3resok resok;
860                 REMOVE3resfail resfail;
861         } REMOVE3res_u;
862 };
863 typedef struct REMOVE3res REMOVE3res;
864
865 struct RMDIR3args {
866         diropargs3 object;
867 };
868 typedef struct RMDIR3args RMDIR3args;
869
870 struct RMDIR3resok {
871         wcc_data dir_wcc;
872 };
873 typedef struct RMDIR3resok RMDIR3resok;
874
875 struct RMDIR3resfail {
876         wcc_data dir_wcc;
877 };
878 typedef struct RMDIR3resfail RMDIR3resfail;
879
880 struct RMDIR3res {
881         nfsstat3 status;
882         union {
883                 RMDIR3resok resok;
884                 RMDIR3resfail resfail;
885         } RMDIR3res_u;
886 };
887 typedef struct RMDIR3res RMDIR3res;
888
889 struct RENAME3args {
890         diropargs3 from;
891         diropargs3 to;
892 };
893 typedef struct RENAME3args RENAME3args;
894
895 struct RENAME3resok {
896         wcc_data fromdir_wcc;
897         wcc_data todir_wcc;
898 };
899 typedef struct RENAME3resok RENAME3resok;
900
901 struct RENAME3resfail {
902         wcc_data fromdir_wcc;
903         wcc_data todir_wcc;
904 };
905 typedef struct RENAME3resfail RENAME3resfail;
906
907 struct RENAME3res {
908         nfsstat3 status;
909         union {
910                 RENAME3resok resok;
911                 RENAME3resfail resfail;
912         } RENAME3res_u;
913 };
914 typedef struct RENAME3res RENAME3res;
915
916 struct LINK3args {
917         nfs_fh3 file;
918         diropargs3 link;
919 };
920 typedef struct LINK3args LINK3args;
921
922 struct LINK3resok {
923         post_op_attr file_attributes;
924         wcc_data linkdir_wcc;
925 };
926 typedef struct LINK3resok LINK3resok;
927
928 struct LINK3resfail {
929         post_op_attr file_attributes;
930         wcc_data linkdir_wcc;
931 };
932 typedef struct LINK3resfail LINK3resfail;
933
934 struct LINK3res {
935         nfsstat3 status;
936         union {
937                 LINK3resok resok;
938                 LINK3resfail resfail;
939         } LINK3res_u;
940 };
941 typedef struct LINK3res LINK3res;
942
943 struct READDIR3args {
944         nfs_fh3 dir;
945         cookie3 cookie;
946         cookieverf3 cookieverf;
947         count3 count;
948 };
949 typedef struct READDIR3args READDIR3args;
950
951 struct entry3 {
952         fileid3 fileid;
953         filename3 name;
954         cookie3 cookie;
955         struct entry3 *nextentry;
956 };
957 typedef struct entry3 entry3;
958
959 struct dirlist3 {
960         entry3 *entries;
961         bool_t eof;
962 };
963 typedef struct dirlist3 dirlist3;
964
965 struct READDIR3resok {
966         post_op_attr dir_attributes;
967         cookieverf3 cookieverf;
968         dirlist3 reply;
969 };
970 typedef struct READDIR3resok READDIR3resok;
971
972 struct READDIR3resfail {
973         post_op_attr dir_attributes;
974 };
975 typedef struct READDIR3resfail READDIR3resfail;
976
977 struct READDIR3res {
978         nfsstat3 status;
979         union {
980                 READDIR3resok resok;
981                 READDIR3resfail resfail;
982         } READDIR3res_u;
983 };
984 typedef struct READDIR3res READDIR3res;
985
986 struct READDIRPLUS3args {
987         nfs_fh3 dir;
988         cookie3 cookie;
989         cookieverf3 cookieverf;
990         count3 dircount;
991         count3 maxcount;
992 };
993 typedef struct READDIRPLUS3args READDIRPLUS3args;
994
995 struct entryplus3 {
996         fileid3 fileid;
997         filename3 name;
998         cookie3 cookie;
999         post_op_attr name_attributes;
1000         post_op_fh3 name_handle;
1001         struct entryplus3 *nextentry;
1002 };
1003 typedef struct entryplus3 entryplus3;
1004
1005 struct dirlistplus3 {
1006         entryplus3 *entries;
1007         bool_t eof;
1008 };
1009 typedef struct dirlistplus3 dirlistplus3;
1010
1011 struct READDIRPLUS3resok {
1012         post_op_attr dir_attributes;
1013         cookieverf3 cookieverf;
1014         dirlistplus3 reply;
1015 };
1016 typedef struct READDIRPLUS3resok READDIRPLUS3resok;
1017
1018 struct READDIRPLUS3resfail {
1019         post_op_attr dir_attributes;
1020 };
1021 typedef struct READDIRPLUS3resfail READDIRPLUS3resfail;
1022
1023 struct READDIRPLUS3res {
1024         nfsstat3 status;
1025         union {
1026                 READDIRPLUS3resok resok;
1027                 READDIRPLUS3resfail resfail;
1028         } READDIRPLUS3res_u;
1029 };
1030 typedef struct READDIRPLUS3res READDIRPLUS3res;
1031
1032 struct FSSTAT3args {
1033         nfs_fh3 fsroot;
1034 };
1035 typedef struct FSSTAT3args FSSTAT3args;
1036
1037 struct FSSTAT3resok {
1038         post_op_attr obj_attributes;
1039         size3 tbytes;
1040         size3 fbytes;
1041         size3 abytes;
1042         size3 tfiles;
1043         size3 ffiles;
1044         size3 afiles;
1045         uint32 invarsec;
1046 };
1047 typedef struct FSSTAT3resok FSSTAT3resok;
1048
1049 struct FSSTAT3resfail {
1050         post_op_attr obj_attributes;
1051 };
1052 typedef struct FSSTAT3resfail FSSTAT3resfail;
1053
1054 struct FSSTAT3res {
1055         nfsstat3 status;
1056         union {
1057                 FSSTAT3resok resok;
1058                 FSSTAT3resfail resfail;
1059         } FSSTAT3res_u;
1060 };
1061 typedef struct FSSTAT3res FSSTAT3res;
1062 #define FSF3_LINK 0x0001
1063 #define FSF3_SYMLINK 0x0002
1064 #define FSF3_HOMOGENEOUS 0x0008
1065 #define FSF3_CANSETTIME 0x0010
1066
1067 struct FSINFO3args {
1068         nfs_fh3 fsroot;
1069 };
1070 typedef struct FSINFO3args FSINFO3args;
1071
1072 struct FSINFO3resok {
1073         post_op_attr obj_attributes;
1074         uint32 rtmax;
1075         uint32 rtpref;
1076         uint32 rtmult;
1077         uint32 wtmax;
1078         uint32 wtpref;
1079         uint32 wtmult;
1080         uint32 dtpref;
1081         size3 maxfilesize;
1082         nfstime3 time_delta;
1083         uint32 properties;
1084 };
1085 typedef struct FSINFO3resok FSINFO3resok;
1086
1087 struct FSINFO3resfail {
1088         post_op_attr obj_attributes;
1089 };
1090 typedef struct FSINFO3resfail FSINFO3resfail;
1091
1092 struct FSINFO3res {
1093         nfsstat3 status;
1094         union {
1095                 FSINFO3resok resok;
1096                 FSINFO3resfail resfail;
1097         } FSINFO3res_u;
1098 };
1099 typedef struct FSINFO3res FSINFO3res;
1100
1101 struct PATHCONF3args {
1102         nfs_fh3 object;
1103 };
1104 typedef struct PATHCONF3args PATHCONF3args;
1105
1106 struct PATHCONF3resok {
1107         post_op_attr obj_attributes;
1108         uint32 linkmax;
1109         uint32 name_max;
1110         bool_t no_trunc;
1111         bool_t chown_restricted;
1112         bool_t case_insensitive;
1113         bool_t case_preserving;
1114 };
1115 typedef struct PATHCONF3resok PATHCONF3resok;
1116
1117 struct PATHCONF3resfail {
1118         post_op_attr obj_attributes;
1119 };
1120 typedef struct PATHCONF3resfail PATHCONF3resfail;
1121
1122 struct PATHCONF3res {
1123         nfsstat3 status;
1124         union {
1125                 PATHCONF3resok resok;
1126                 PATHCONF3resfail resfail;
1127         } PATHCONF3res_u;
1128 };
1129 typedef struct PATHCONF3res PATHCONF3res;
1130
1131 struct COMMIT3args {
1132         nfs_fh3 file;
1133         offset3 offset;
1134         count3 count;
1135 };
1136 typedef struct COMMIT3args COMMIT3args;
1137
1138 struct COMMIT3resok {
1139         wcc_data file_wcc;
1140         writeverf3 verf;
1141 };
1142 typedef struct COMMIT3resok COMMIT3resok;
1143
1144 struct COMMIT3resfail {
1145         wcc_data file_wcc;
1146 };
1147 typedef struct COMMIT3resfail COMMIT3resfail;
1148
1149 struct COMMIT3res {
1150         nfsstat3 status;
1151         union {
1152                 COMMIT3resok resok;
1153                 COMMIT3resfail resfail;
1154         } COMMIT3res_u;
1155 };
1156 typedef struct COMMIT3res COMMIT3res;
1157
1158 #define NFS_PROGRAM ((unsigned long)(100003))
1159 #define NFS_VERSION ((unsigned long)(2))
1160
1161 extern  void nfs_program_2(struct svc_req *rqstp, SVCXPRT *transp);
1162 #define NFSPROC_NULL ((unsigned long)(0))
1163 extern  void * nfsproc_null_2(void *, CLIENT *);
1164 extern  void * nfsproc_null_2_svc(void *, struct svc_req *);
1165 #define NFSPROC_GETATTR ((unsigned long)(1))
1166 extern  attrstat * nfsproc_getattr_2(nfs_fh *, CLIENT *);
1167 extern  attrstat * nfsproc_getattr_2_svc(nfs_fh *, struct svc_req *);
1168 #define NFSPROC_SETATTR ((unsigned long)(2))
1169 extern  attrstat * nfsproc_setattr_2(sattrargs *, CLIENT *);
1170 extern  attrstat * nfsproc_setattr_2_svc(sattrargs *, struct svc_req *);
1171 #define NFSPROC_ROOT ((unsigned long)(3))
1172 extern  void * nfsproc_root_2(void *, CLIENT *);
1173 extern  void * nfsproc_root_2_svc(void *, struct svc_req *);
1174 #define NFSPROC_LOOKUP ((unsigned long)(4))
1175 extern  diropres * nfsproc_lookup_2(diropargs *, CLIENT *);
1176 extern  diropres * nfsproc_lookup_2_svc(diropargs *, struct svc_req *);
1177 #define NFSPROC_READLINK ((unsigned long)(5))
1178 extern  readlinkres * nfsproc_readlink_2(nfs_fh *, CLIENT *);
1179 extern  readlinkres * nfsproc_readlink_2_svc(nfs_fh *, struct svc_req *);
1180 #define NFSPROC_READ ((unsigned long)(6))
1181 extern  readres * nfsproc_read_2(readargs *, CLIENT *);
1182 extern  readres * nfsproc_read_2_svc(readargs *, struct svc_req *);
1183 #define NFSPROC_WRITECACHE ((unsigned long)(7))
1184 extern  void * nfsproc_writecache_2(void *, CLIENT *);
1185 extern  void * nfsproc_writecache_2_svc(void *, struct svc_req *);
1186 #define NFSPROC_WRITE ((unsigned long)(8))
1187 extern  attrstat * nfsproc_write_2(writeargs *, CLIENT *);
1188 extern  attrstat * nfsproc_write_2_svc(writeargs *, struct svc_req *);
1189 #define NFSPROC_CREATE ((unsigned long)(9))
1190 extern  diropres * nfsproc_create_2(createargs *, CLIENT *);
1191 extern  diropres * nfsproc_create_2_svc(createargs *, struct svc_req *);
1192 #define NFSPROC_REMOVE ((unsigned long)(10))
1193 extern  nfsstat * nfsproc_remove_2(diropargs *, CLIENT *);
1194 extern  nfsstat * nfsproc_remove_2_svc(diropargs *, struct svc_req *);
1195 #define NFSPROC_RENAME ((unsigned long)(11))
1196 extern  nfsstat * nfsproc_rename_2(renameargs *, CLIENT *);
1197 extern  nfsstat * nfsproc_rename_2_svc(renameargs *, struct svc_req *);
1198 #define NFSPROC_LINK ((unsigned long)(12))
1199 extern  nfsstat * nfsproc_link_2(linkargs *, CLIENT *);
1200 extern  nfsstat * nfsproc_link_2_svc(linkargs *, struct svc_req *);
1201 #define NFSPROC_SYMLINK ((unsigned long)(13))
1202 extern  nfsstat * nfsproc_symlink_2(symlinkargs *, CLIENT *);
1203 extern  nfsstat * nfsproc_symlink_2_svc(symlinkargs *, struct svc_req *);
1204 #define NFSPROC_MKDIR ((unsigned long)(14))
1205 extern  diropres * nfsproc_mkdir_2(createargs *, CLIENT *);
1206 extern  diropres * nfsproc_mkdir_2_svc(createargs *, struct svc_req *);
1207 #define NFSPROC_RMDIR ((unsigned long)(15))
1208 extern  nfsstat * nfsproc_rmdir_2(diropargs *, CLIENT *);
1209 extern  nfsstat * nfsproc_rmdir_2_svc(diropargs *, struct svc_req *);
1210 #define NFSPROC_READDIR ((unsigned long)(16))
1211 extern  readdirres * nfsproc_readdir_2(readdirargs *, CLIENT *);
1212 extern  readdirres * nfsproc_readdir_2_svc(readdirargs *, struct svc_req *);
1213 #define NFSPROC_STATFS ((unsigned long)(17))
1214 extern  statfsres * nfsproc_statfs_2(nfs_fh *, CLIENT *);
1215 extern  statfsres * nfsproc_statfs_2_svc(nfs_fh *, struct svc_req *);
1216 extern int nfs_program_2_freeresult(SVCXPRT *, xdrproc_t, caddr_t);
1217
1218 #define NFS3_PROGRAM ((unsigned long)(100003))
1219 #define NFS_V3 ((unsigned long)(3))
1220
1221 extern  void nfs3_program_3(struct svc_req *rqstp, SVCXPRT *transp);
1222 #define NFSPROC3_NULL ((unsigned long)(0))
1223 extern  void * nfsproc3_null_3(void *, CLIENT *);
1224 extern  void * nfsproc3_null_3_svc(void *, struct svc_req *);
1225 #define NFSPROC3_GETATTR ((unsigned long)(1))
1226 extern  GETATTR3res * nfsproc3_getattr_3(GETATTR3args *, CLIENT *);
1227 extern  GETATTR3res * nfsproc3_getattr_3_svc(GETATTR3args *, struct svc_req *);
1228 #define NFSPROC3_SETATTR ((unsigned long)(2))
1229 extern  SETATTR3res * nfsproc3_setattr_3(SETATTR3args *, CLIENT *);
1230 extern  SETATTR3res * nfsproc3_setattr_3_svc(SETATTR3args *, struct svc_req *);
1231 #define NFSPROC3_LOOKUP ((unsigned long)(3))
1232 extern  LOOKUP3res * nfsproc3_lookup_3(LOOKUP3args *, CLIENT *);
1233 extern  LOOKUP3res * nfsproc3_lookup_3_svc(LOOKUP3args *, struct svc_req *);
1234 #define NFSPROC3_ACCESS ((unsigned long)(4))
1235 extern  ACCESS3res * nfsproc3_access_3(ACCESS3args *, CLIENT *);
1236 extern  ACCESS3res * nfsproc3_access_3_svc(ACCESS3args *, struct svc_req *);
1237 #define NFSPROC3_READLINK ((unsigned long)(5))
1238 extern  READLINK3res * nfsproc3_readlink_3(READLINK3args *, CLIENT *);
1239 extern  READLINK3res * nfsproc3_readlink_3_svc(READLINK3args *, struct svc_req *);
1240 #define NFSPROC3_READ ((unsigned long)(6))
1241 extern  READ3res * nfsproc3_read_3(READ3args *, CLIENT *);
1242 extern  READ3res * nfsproc3_read_3_svc(READ3args *, struct svc_req *);
1243 #define NFSPROC3_WRITE ((unsigned long)(7))
1244 extern  WRITE3res * nfsproc3_write_3(WRITE3args *, CLIENT *);
1245 extern  WRITE3res * nfsproc3_write_3_svc(WRITE3args *, struct svc_req *);
1246 #define NFSPROC3_CREATE ((unsigned long)(8))
1247 extern  CREATE3res * nfsproc3_create_3(CREATE3args *, CLIENT *);
1248 extern  CREATE3res * nfsproc3_create_3_svc(CREATE3args *, struct svc_req *);
1249 #define NFSPROC3_MKDIR ((unsigned long)(9))
1250 extern  MKDIR3res * nfsproc3_mkdir_3(MKDIR3args *, CLIENT *);
1251 extern  MKDIR3res * nfsproc3_mkdir_3_svc(MKDIR3args *, struct svc_req *);
1252 #define NFSPROC3_SYMLINK ((unsigned long)(10))
1253 extern  SYMLINK3res * nfsproc3_symlink_3(SYMLINK3args *, CLIENT *);
1254 extern  SYMLINK3res * nfsproc3_symlink_3_svc(SYMLINK3args *, struct svc_req *);
1255 #define NFSPROC3_MKNOD ((unsigned long)(11))
1256 extern  MKNOD3res * nfsproc3_mknod_3(MKNOD3args *, CLIENT *);
1257 extern  MKNOD3res * nfsproc3_mknod_3_svc(MKNOD3args *, struct svc_req *);
1258 #define NFSPROC3_REMOVE ((unsigned long)(12))
1259 extern  REMOVE3res * nfsproc3_remove_3(REMOVE3args *, CLIENT *);
1260 extern  REMOVE3res * nfsproc3_remove_3_svc(REMOVE3args *, struct svc_req *);
1261 #define NFSPROC3_RMDIR ((unsigned long)(13))
1262 extern  RMDIR3res * nfsproc3_rmdir_3(RMDIR3args *, CLIENT *);
1263 extern  RMDIR3res * nfsproc3_rmdir_3_svc(RMDIR3args *, struct svc_req *);
1264 #define NFSPROC3_RENAME ((unsigned long)(14))
1265 extern  RENAME3res * nfsproc3_rename_3(RENAME3args *, CLIENT *);
1266 extern  RENAME3res * nfsproc3_rename_3_svc(RENAME3args *, struct svc_req *);
1267 #define NFSPROC3_LINK ((unsigned long)(15))
1268 extern  LINK3res * nfsproc3_link_3(LINK3args *, CLIENT *);
1269 extern  LINK3res * nfsproc3_link_3_svc(LINK3args *, struct svc_req *);
1270 #define NFSPROC3_READDIR ((unsigned long)(16))
1271 extern  READDIR3res * nfsproc3_readdir_3(READDIR3args *, CLIENT *);
1272 extern  READDIR3res * nfsproc3_readdir_3_svc(READDIR3args *, struct svc_req *);
1273 #define NFSPROC3_READDIRPLUS ((unsigned long)(17))
1274 extern  READDIRPLUS3res * nfsproc3_readdirplus_3(READDIRPLUS3args *, CLIENT *);
1275 extern  READDIRPLUS3res * nfsproc3_readdirplus_3_svc(READDIRPLUS3args *, struct svc_req *);
1276 #define NFSPROC3_FSSTAT ((unsigned long)(18))
1277 extern  FSSTAT3res * nfsproc3_fsstat_3(FSSTAT3args *, CLIENT *);
1278 extern  FSSTAT3res * nfsproc3_fsstat_3_svc(FSSTAT3args *, struct svc_req *);
1279 #define NFSPROC3_FSINFO ((unsigned long)(19))
1280 extern  FSINFO3res * nfsproc3_fsinfo_3(FSINFO3args *, CLIENT *);
1281 extern  FSINFO3res * nfsproc3_fsinfo_3_svc(FSINFO3args *, struct svc_req *);
1282 #define NFSPROC3_PATHCONF ((unsigned long)(20))
1283 extern  PATHCONF3res * nfsproc3_pathconf_3(PATHCONF3args *, CLIENT *);
1284 extern  PATHCONF3res * nfsproc3_pathconf_3_svc(PATHCONF3args *, struct svc_req *);
1285 #define NFSPROC3_COMMIT ((unsigned long)(21))
1286 extern  COMMIT3res * nfsproc3_commit_3(COMMIT3args *, CLIENT *);
1287 extern  COMMIT3res * nfsproc3_commit_3_svc(COMMIT3args *, struct svc_req *);
1288 extern int nfs3_program_3_freeresult(SVCXPRT *, xdrproc_t, caddr_t);
1289
1290 /* the xdr functions */
1291 extern  bool_t xdr_nfsstat(XDR *, nfsstat*);
1292 extern  bool_t xdr_ftype(XDR *, ftype*);
1293 extern  bool_t xdr_nfs_fh(XDR *, nfs_fh*);
1294 extern  bool_t xdr_nfstime(XDR *, nfstime*);
1295 extern  bool_t xdr_fattr(XDR *, fattr*);
1296 extern  bool_t xdr_sattr(XDR *, sattr*);
1297 extern  bool_t xdr_filename(XDR *, filename*);
1298 extern  bool_t xdr_nfspath(XDR *, nfspath*);
1299 extern  bool_t xdr_attrstat(XDR *, attrstat*);
1300 extern  bool_t xdr_sattrargs(XDR *, sattrargs*);
1301 extern  bool_t xdr_diropargs(XDR *, diropargs*);
1302 extern  bool_t xdr_diropokres(XDR *, diropokres*);
1303 extern  bool_t xdr_diropres(XDR *, diropres*);
1304 extern  bool_t xdr_readlinkres(XDR *, readlinkres*);
1305 extern  bool_t xdr_readargs(XDR *, readargs*);
1306 extern  bool_t xdr_readokres(XDR *, readokres*);
1307 extern  bool_t xdr_readres(XDR *, readres*);
1308 extern  bool_t xdr_writeargs(XDR *, writeargs*);
1309 extern  bool_t xdr_createargs(XDR *, createargs*);
1310 extern  bool_t xdr_renameargs(XDR *, renameargs*);
1311 extern  bool_t xdr_linkargs(XDR *, linkargs*);
1312 extern  bool_t xdr_symlinkargs(XDR *, symlinkargs*);
1313 extern  bool_t xdr_nfscookie(XDR *, nfscookie);
1314 extern  bool_t xdr_readdirargs(XDR *, readdirargs*);
1315 extern  bool_t xdr_entry(XDR *, entry*);
1316 extern  bool_t xdr_dirlist(XDR *, dirlist*);
1317 extern  bool_t xdr_readdirres(XDR *, readdirres*);
1318 extern  bool_t xdr_statfsokres(XDR *, statfsokres*);
1319 extern  bool_t xdr_statfsres(XDR *, statfsres*);
1320 extern  bool_t xdr_uint64(XDR *, uint64*);
1321 extern  bool_t xdr_int64(XDR *, int64*);
1322 extern  bool_t xdr_uint32(XDR *, uint32*);
1323 extern  bool_t xdr_int32(XDR *, int32*);
1324 extern  bool_t xdr_filename3(XDR *, filename3*);
1325 extern  bool_t xdr_nfspath3(XDR *, nfspath3*);
1326 extern  bool_t xdr_fileid3(XDR *, fileid3*);
1327 extern  bool_t xdr_cookie3(XDR *, cookie3*);
1328 extern  bool_t xdr_cookieverf3(XDR *, cookieverf3);
1329 extern  bool_t xdr_createverf3(XDR *, createverf3);
1330 extern  bool_t xdr_writeverf3(XDR *, writeverf3);
1331 extern  bool_t xdr_uid3(XDR *, uid3*);
1332 extern  bool_t xdr_gid3(XDR *, gid3*);
1333 extern  bool_t xdr_size3(XDR *, size3*);
1334 extern  bool_t xdr_offset3(XDR *, offset3*);
1335 extern  bool_t xdr_mode3(XDR *, mode3*);
1336 extern  bool_t xdr_count3(XDR *, count3*);
1337 extern  bool_t xdr_nfsstat3(XDR *, nfsstat3*);
1338 extern  bool_t xdr_ftype3(XDR *, ftype3*);
1339 extern  bool_t xdr_specdata3(XDR *, specdata3*);
1340 extern  bool_t xdr_nfs_fh3(XDR *, nfs_fh3*);
1341 extern  bool_t xdr_nfstime3(XDR *, nfstime3*);
1342 extern  bool_t xdr_fattr3(XDR *, fattr3*);
1343 extern  bool_t xdr_post_op_attr(XDR *, post_op_attr*);
1344 extern  bool_t xdr_wcc_attr(XDR *, wcc_attr*);
1345 extern  bool_t xdr_pre_op_attr(XDR *, pre_op_attr*);
1346 extern  bool_t xdr_wcc_data(XDR *, wcc_data*);
1347 extern  bool_t xdr_post_op_fh3(XDR *, post_op_fh3*);
1348 extern  bool_t xdr_time_how(XDR *, time_how*);
1349 extern  bool_t xdr_set_mode3(XDR *, set_mode3*);
1350 extern  bool_t xdr_set_uid3(XDR *, set_uid3*);
1351 extern  bool_t xdr_set_gid3(XDR *, set_gid3*);
1352 extern  bool_t xdr_set_size3(XDR *, set_size3*);
1353 extern  bool_t xdr_set_atime(XDR *, set_atime*);
1354 extern  bool_t xdr_set_mtime(XDR *, set_mtime*);
1355 extern  bool_t xdr_sattr3(XDR *, sattr3*);
1356 extern  bool_t xdr_diropargs3(XDR *, diropargs3*);
1357 extern  bool_t xdr_GETATTR3args(XDR *, GETATTR3args*);
1358 extern  bool_t xdr_GETATTR3resok(XDR *, GETATTR3resok*);
1359 extern  bool_t xdr_GETATTR3res(XDR *, GETATTR3res*);
1360 extern  bool_t xdr_sattrguard3(XDR *, sattrguard3*);
1361 extern  bool_t xdr_SETATTR3args(XDR *, SETATTR3args*);
1362 extern  bool_t xdr_SETATTR3resok(XDR *, SETATTR3resok*);
1363 extern  bool_t xdr_SETATTR3resfail(XDR *, SETATTR3resfail*);
1364 extern  bool_t xdr_SETATTR3res(XDR *, SETATTR3res*);
1365 extern  bool_t xdr_LOOKUP3args(XDR *, LOOKUP3args*);
1366 extern  bool_t xdr_LOOKUP3resok(XDR *, LOOKUP3resok*);
1367 extern  bool_t xdr_LOOKUP3resfail(XDR *, LOOKUP3resfail*);
1368 extern  bool_t xdr_LOOKUP3res(XDR *, LOOKUP3res*);
1369 extern  bool_t xdr_ACCESS3args(XDR *, ACCESS3args*);
1370 extern  bool_t xdr_ACCESS3resok(XDR *, ACCESS3resok*);
1371 extern  bool_t xdr_ACCESS3resfail(XDR *, ACCESS3resfail*);
1372 extern  bool_t xdr_ACCESS3res(XDR *, ACCESS3res*);
1373 extern  bool_t xdr_READLINK3args(XDR *, READLINK3args*);
1374 extern  bool_t xdr_READLINK3resok(XDR *, READLINK3resok*);
1375 extern  bool_t xdr_READLINK3resfail(XDR *, READLINK3resfail*);
1376 extern  bool_t xdr_READLINK3res(XDR *, READLINK3res*);
1377 extern  bool_t xdr_READ3args(XDR *, READ3args*);
1378 extern  bool_t xdr_READ3resok(XDR *, READ3resok*);
1379 extern  bool_t xdr_READ3resfail(XDR *, READ3resfail*);
1380 extern  bool_t xdr_READ3res(XDR *, READ3res*);
1381 extern  bool_t xdr_stable_how(XDR *, stable_how*);
1382 extern  bool_t xdr_WRITE3args(XDR *, WRITE3args*);
1383 extern  bool_t xdr_WRITE3resok(XDR *, WRITE3resok*);
1384 extern  bool_t xdr_WRITE3resfail(XDR *, WRITE3resfail*);
1385 extern  bool_t xdr_WRITE3res(XDR *, WRITE3res*);
1386 extern  bool_t xdr_createmode3(XDR *, createmode3*);
1387 extern  bool_t xdr_createhow3(XDR *, createhow3*);
1388 extern  bool_t xdr_CREATE3args(XDR *, CREATE3args*);
1389 extern  bool_t xdr_CREATE3resok(XDR *, CREATE3resok*);
1390 extern  bool_t xdr_CREATE3resfail(XDR *, CREATE3resfail*);
1391 extern  bool_t xdr_CREATE3res(XDR *, CREATE3res*);
1392 extern  bool_t xdr_MKDIR3args(XDR *, MKDIR3args*);
1393 extern  bool_t xdr_MKDIR3resok(XDR *, MKDIR3resok*);
1394 extern  bool_t xdr_MKDIR3resfail(XDR *, MKDIR3resfail*);
1395 extern  bool_t xdr_MKDIR3res(XDR *, MKDIR3res*);
1396 extern  bool_t xdr_symlinkdata3(XDR *, symlinkdata3*);
1397 extern  bool_t xdr_SYMLINK3args(XDR *, SYMLINK3args*);
1398 extern  bool_t xdr_SYMLINK3resok(XDR *, SYMLINK3resok*);
1399 extern  bool_t xdr_SYMLINK3resfail(XDR *, SYMLINK3resfail*);
1400 extern  bool_t xdr_SYMLINK3res(XDR *, SYMLINK3res*);
1401 extern  bool_t xdr_devicedata3(XDR *, devicedata3*);
1402 extern  bool_t xdr_mknoddata3(XDR *, mknoddata3*);
1403 extern  bool_t xdr_MKNOD3args(XDR *, MKNOD3args*);
1404 extern  bool_t xdr_MKNOD3resok(XDR *, MKNOD3resok*);
1405 extern  bool_t xdr_MKNOD3resfail(XDR *, MKNOD3resfail*);
1406 extern  bool_t xdr_MKNOD3res(XDR *, MKNOD3res*);
1407 extern  bool_t xdr_REMOVE3args(XDR *, REMOVE3args*);
1408 extern  bool_t xdr_REMOVE3resok(XDR *, REMOVE3resok*);
1409 extern  bool_t xdr_REMOVE3resfail(XDR *, REMOVE3resfail*);
1410 extern  bool_t xdr_REMOVE3res(XDR *, REMOVE3res*);
1411 extern  bool_t xdr_RMDIR3args(XDR *, RMDIR3args*);
1412 extern  bool_t xdr_RMDIR3resok(XDR *, RMDIR3resok*);
1413 extern  bool_t xdr_RMDIR3resfail(XDR *, RMDIR3resfail*);
1414 extern  bool_t xdr_RMDIR3res(XDR *, RMDIR3res*);
1415 extern  bool_t xdr_RENAME3args(XDR *, RENAME3args*);
1416 extern  bool_t xdr_RENAME3resok(XDR *, RENAME3resok*);
1417 extern  bool_t xdr_RENAME3resfail(XDR *, RENAME3resfail*);
1418 extern  bool_t xdr_RENAME3res(XDR *, RENAME3res*);
1419 extern  bool_t xdr_LINK3args(XDR *, LINK3args*);
1420 extern  bool_t xdr_LINK3resok(XDR *, LINK3resok*);
1421 extern  bool_t xdr_LINK3resfail(XDR *, LINK3resfail*);
1422 extern  bool_t xdr_LINK3res(XDR *, LINK3res*);
1423 extern  bool_t xdr_READDIR3args(XDR *, READDIR3args*);
1424 extern  bool_t xdr_entry3(XDR *, entry3*);
1425 extern  bool_t xdr_dirlist3(XDR *, dirlist3*);
1426 extern  bool_t xdr_READDIR3resok(XDR *, READDIR3resok*);
1427 extern  bool_t xdr_READDIR3resfail(XDR *, READDIR3resfail*);
1428 extern  bool_t xdr_READDIR3res(XDR *, READDIR3res*);
1429 extern  bool_t xdr_READDIRPLUS3args(XDR *, READDIRPLUS3args*);
1430 extern  bool_t xdr_entryplus3(XDR *, entryplus3*);
1431 extern  bool_t xdr_dirlistplus3(XDR *, dirlistplus3*);
1432 extern  bool_t xdr_READDIRPLUS3resok(XDR *, READDIRPLUS3resok*);
1433 extern  bool_t xdr_READDIRPLUS3resfail(XDR *, READDIRPLUS3resfail*);
1434 extern  bool_t xdr_READDIRPLUS3res(XDR *, READDIRPLUS3res*);
1435 extern  bool_t xdr_FSSTAT3args(XDR *, FSSTAT3args*);
1436 extern  bool_t xdr_FSSTAT3resok(XDR *, FSSTAT3resok*);
1437 extern  bool_t xdr_FSSTAT3resfail(XDR *, FSSTAT3resfail*);
1438 extern  bool_t xdr_FSSTAT3res(XDR *, FSSTAT3res*);
1439 extern  bool_t xdr_FSINFO3args(XDR *, FSINFO3args*);
1440 extern  bool_t xdr_FSINFO3resok(XDR *, FSINFO3resok*);
1441 extern  bool_t xdr_FSINFO3resfail(XDR *, FSINFO3resfail*);
1442 extern  bool_t xdr_FSINFO3res(XDR *, FSINFO3res*);
1443 extern  bool_t xdr_PATHCONF3args(XDR *, PATHCONF3args*);
1444 extern  bool_t xdr_PATHCONF3resok(XDR *, PATHCONF3resok*);
1445 extern  bool_t xdr_PATHCONF3resfail(XDR *, PATHCONF3resfail*);
1446 extern  bool_t xdr_PATHCONF3res(XDR *, PATHCONF3res*);
1447 extern  bool_t xdr_COMMIT3args(XDR *, COMMIT3args*);
1448 extern  bool_t xdr_COMMIT3resok(XDR *, COMMIT3resok*);
1449 extern  bool_t xdr_COMMIT3resfail(XDR *, COMMIT3resfail*);
1450 extern  bool_t xdr_COMMIT3res(XDR *, COMMIT3res*);
1451
1452 #ifdef __cplusplus
1453 }
1454 #endif
1455
1456 #endif /* !_NFS_PROT_H_RPCGEN */