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