NFS: Update compile_rpc and regenerate the nfs marshalling/unmarshalling code
[deb_libnfs.git] / nfs / libnfs-raw-nfs.h
1 /*
2 * Please do not edit this file.
3 * It was generated using rpcgen.
4 */
5
6 #ifndef _NFS_H_RPCGEN
7 #define _NFS_H_RPCGEN
8 #include <nfsc/libnfs-zdr.h>
9
10
11
12
13 #ifdef __cplusplus
14 extern "C" {
15 #endif
16
17 #define NFS3_FHSIZE 64
18 #define NFS3_WRITEVERFSIZE 8
19 #define NFS3_CREATEVERFSIZE 8
20 #define NFS3_COOKIEVERFSIZE 8
21
22 #if defined(ANDROID)
23 typedef long long int quad_t;
24 typedef long long unsigned u_quad_t;
25 #endif
26 #if defined(WIN32)
27 typedef long long int quad_t;
28 typedef long long unsigned u_quad_t;
29 #endif
30
31 typedef char cookieverf3[NFS3_COOKIEVERFSIZE];
32
33 typedef u_quad_t uint64;
34
35 typedef uint64 cookie3;
36
37 struct nfs_fh3 {
38 struct {
39 u_int data_len;
40 char *data_val;
41 } data;
42 };
43 typedef struct nfs_fh3 nfs_fh3;
44
45 typedef char *filename3;
46
47 struct diropargs3 {
48 nfs_fh3 dir;
49 filename3 name;
50 };
51 typedef struct diropargs3 diropargs3;
52
53 enum ftype3 {
54 NF3REG = 1,
55 NF3DIR = 2,
56 NF3BLK = 3,
57 NF3CHR = 4,
58 NF3LNK = 5,
59 NF3SOCK = 6,
60 NF3FIFO = 7,
61 };
62 typedef enum ftype3 ftype3;
63
64 typedef u_int mode3;
65
66 typedef u_int uid3;
67
68 typedef u_int gid3;
69
70 typedef uint64 size3;
71
72 typedef uint64 fileid3;
73
74 struct specdata3 {
75 u_int specdata1;
76 u_int specdata2;
77 };
78 typedef struct specdata3 specdata3;
79
80 struct nfstime3 {
81 u_int seconds;
82 u_int nseconds;
83 };
84 typedef struct nfstime3 nfstime3;
85
86 struct fattr3 {
87 ftype3 type;
88 mode3 mode;
89 u_int nlink;
90 uid3 uid;
91 gid3 gid;
92 size3 size;
93 size3 used;
94 specdata3 rdev;
95 uint64 fsid;
96 fileid3 fileid;
97 nfstime3 atime;
98 nfstime3 mtime;
99 nfstime3 ctime;
100 };
101 typedef struct fattr3 fattr3;
102
103 struct post_op_attr {
104 bool_t attributes_follow;
105 union {
106 fattr3 attributes;
107 } post_op_attr_u;
108 };
109 typedef struct post_op_attr post_op_attr;
110
111 enum nfsstat3 {
112 NFS3_OK = 0,
113 NFS3ERR_PERM = 1,
114 NFS3ERR_NOENT = 2,
115 NFS3ERR_IO = 5,
116 NFS3ERR_NXIO = 6,
117 NFS3ERR_ACCES = 13,
118 NFS3ERR_EXIST = 17,
119 NFS3ERR_XDEV = 18,
120 NFS3ERR_NODEV = 19,
121 NFS3ERR_NOTDIR = 20,
122 NFS3ERR_ISDIR = 21,
123 NFS3ERR_INVAL = 22,
124 NFS3ERR_FBIG = 27,
125 NFS3ERR_NOSPC = 28,
126 NFS3ERR_ROFS = 30,
127 NFS3ERR_MLINK = 31,
128 NFS3ERR_NAMETOOLONG = 63,
129 NFS3ERR_NOTEMPTY = 66,
130 NFS3ERR_DQUOT = 69,
131 NFS3ERR_STALE = 70,
132 NFS3ERR_REMOTE = 71,
133 NFS3ERR_BADHANDLE = 10001,
134 NFS3ERR_NOT_SYNC = 10002,
135 NFS3ERR_BAD_COOKIE = 10003,
136 NFS3ERR_NOTSUPP = 10004,
137 NFS3ERR_TOOSMALL = 10005,
138 NFS3ERR_SERVERFAULT = 10006,
139 NFS3ERR_BADTYPE = 10007,
140 NFS3ERR_JUKEBOX = 10008,
141 };
142 typedef enum nfsstat3 nfsstat3;
143
144 enum stable_how {
145 UNSTABLE = 0,
146 DATA_SYNC = 1,
147 FILE_SYNC = 2,
148 };
149 typedef enum stable_how stable_how;
150
151 typedef uint64 offset3;
152
153 typedef u_int count3;
154
155 struct wcc_attr {
156 size3 size;
157 nfstime3 mtime;
158 nfstime3 ctime;
159 };
160 typedef struct wcc_attr wcc_attr;
161
162 struct pre_op_attr {
163 bool_t attributes_follow;
164 union {
165 wcc_attr attributes;
166 } pre_op_attr_u;
167 };
168 typedef struct pre_op_attr pre_op_attr;
169
170 struct wcc_data {
171 pre_op_attr before;
172 post_op_attr after;
173 };
174 typedef struct wcc_data wcc_data;
175
176 struct WRITE3args {
177 nfs_fh3 file;
178 offset3 offset;
179 count3 count;
180 stable_how stable;
181 struct {
182 u_int data_len;
183 char *data_val;
184 } data;
185 };
186 typedef struct WRITE3args WRITE3args;
187
188 typedef char writeverf3[NFS3_WRITEVERFSIZE];
189
190 struct WRITE3resok {
191 wcc_data file_wcc;
192 count3 count;
193 stable_how committed;
194 writeverf3 verf;
195 };
196 typedef struct WRITE3resok WRITE3resok;
197
198 struct WRITE3resfail {
199 wcc_data file_wcc;
200 };
201 typedef struct WRITE3resfail WRITE3resfail;
202
203 struct WRITE3res {
204 nfsstat3 status;
205 union {
206 WRITE3resok resok;
207 WRITE3resfail resfail;
208 } WRITE3res_u;
209 };
210 typedef struct WRITE3res WRITE3res;
211
212 struct LOOKUP3args {
213 diropargs3 what;
214 };
215 typedef struct LOOKUP3args LOOKUP3args;
216
217 struct LOOKUP3resok {
218 nfs_fh3 object;
219 post_op_attr obj_attributes;
220 post_op_attr dir_attributes;
221 };
222 typedef struct LOOKUP3resok LOOKUP3resok;
223
224 struct LOOKUP3resfail {
225 post_op_attr dir_attributes;
226 };
227 typedef struct LOOKUP3resfail LOOKUP3resfail;
228
229 struct LOOKUP3res {
230 nfsstat3 status;
231 union {
232 LOOKUP3resok resok;
233 LOOKUP3resfail resfail;
234 } LOOKUP3res_u;
235 };
236 typedef struct LOOKUP3res LOOKUP3res;
237
238 struct COMMIT3args {
239 nfs_fh3 file;
240 offset3 offset;
241 count3 count;
242 };
243 typedef struct COMMIT3args COMMIT3args;
244
245 struct COMMIT3resok {
246 wcc_data file_wcc;
247 writeverf3 verf;
248 };
249 typedef struct COMMIT3resok COMMIT3resok;
250
251 struct COMMIT3resfail {
252 wcc_data file_wcc;
253 };
254 typedef struct COMMIT3resfail COMMIT3resfail;
255
256 struct COMMIT3res {
257 nfsstat3 status;
258 union {
259 COMMIT3resok resok;
260 COMMIT3resfail resfail;
261 } COMMIT3res_u;
262 };
263 typedef struct COMMIT3res COMMIT3res;
264 #define ACCESS3_READ 0x0001
265 #define ACCESS3_LOOKUP 0x0002
266 #define ACCESS3_MODIFY 0x0004
267 #define ACCESS3_EXTEND 0x0008
268 #define ACCESS3_DELETE 0x0010
269 #define ACCESS3_EXECUTE 0x0020
270
271 struct ACCESS3args {
272 nfs_fh3 object;
273 u_int access;
274 };
275 typedef struct ACCESS3args ACCESS3args;
276
277 struct ACCESS3resok {
278 post_op_attr obj_attributes;
279 u_int access;
280 };
281 typedef struct ACCESS3resok ACCESS3resok;
282
283 struct ACCESS3resfail {
284 post_op_attr obj_attributes;
285 };
286 typedef struct ACCESS3resfail ACCESS3resfail;
287
288 struct ACCESS3res {
289 nfsstat3 status;
290 union {
291 ACCESS3resok resok;
292 ACCESS3resfail resfail;
293 } ACCESS3res_u;
294 };
295 typedef struct ACCESS3res ACCESS3res;
296
297 struct GETATTR3args {
298 nfs_fh3 object;
299 };
300 typedef struct GETATTR3args GETATTR3args;
301
302 struct GETATTR3resok {
303 fattr3 obj_attributes;
304 };
305 typedef struct GETATTR3resok GETATTR3resok;
306
307 struct GETATTR3res {
308 nfsstat3 status;
309 union {
310 GETATTR3resok resok;
311 } GETATTR3res_u;
312 };
313 typedef struct GETATTR3res GETATTR3res;
314
315 enum time_how {
316 DONT_CHANGE = 0,
317 SET_TO_SERVER_TIME = 1,
318 SET_TO_CLIENT_TIME = 2,
319 };
320 typedef enum time_how time_how;
321
322 struct set_mode3 {
323 bool_t set_it;
324 union {
325 mode3 mode;
326 } set_mode3_u;
327 };
328 typedef struct set_mode3 set_mode3;
329
330 struct set_uid3 {
331 bool_t set_it;
332 union {
333 uid3 uid;
334 } set_uid3_u;
335 };
336 typedef struct set_uid3 set_uid3;
337
338 struct set_gid3 {
339 bool_t set_it;
340 union {
341 gid3 gid;
342 } set_gid3_u;
343 };
344 typedef struct set_gid3 set_gid3;
345
346 struct set_size3 {
347 bool_t set_it;
348 union {
349 size3 size;
350 } set_size3_u;
351 };
352 typedef struct set_size3 set_size3;
353
354 struct set_atime {
355 time_how set_it;
356 union {
357 nfstime3 atime;
358 } set_atime_u;
359 };
360 typedef struct set_atime set_atime;
361
362 struct set_mtime {
363 time_how set_it;
364 union {
365 nfstime3 mtime;
366 } set_mtime_u;
367 };
368 typedef struct set_mtime set_mtime;
369
370 struct sattr3 {
371 set_mode3 mode;
372 set_uid3 uid;
373 set_gid3 gid;
374 set_size3 size;
375 set_atime atime;
376 set_mtime mtime;
377 };
378 typedef struct sattr3 sattr3;
379
380 enum createmode3 {
381 UNCHECKED = 0,
382 GUARDED = 1,
383 EXCLUSIVE = 2,
384 };
385 typedef enum createmode3 createmode3;
386
387 typedef char createverf3[NFS3_CREATEVERFSIZE];
388
389 struct createhow3 {
390 createmode3 mode;
391 union {
392 sattr3 obj_attributes;
393 sattr3 g_obj_attributes;
394 createverf3 verf;
395 } createhow3_u;
396 };
397 typedef struct createhow3 createhow3;
398
399 struct CREATE3args {
400 diropargs3 where;
401 createhow3 how;
402 };
403 typedef struct CREATE3args CREATE3args;
404
405 struct post_op_fh3 {
406 bool_t handle_follows;
407 union {
408 nfs_fh3 handle;
409 } post_op_fh3_u;
410 };
411 typedef struct post_op_fh3 post_op_fh3;
412
413 struct CREATE3resok {
414 post_op_fh3 obj;
415 post_op_attr obj_attributes;
416 wcc_data dir_wcc;
417 };
418 typedef struct CREATE3resok CREATE3resok;
419
420 struct CREATE3resfail {
421 wcc_data dir_wcc;
422 };
423 typedef struct CREATE3resfail CREATE3resfail;
424
425 struct CREATE3res {
426 nfsstat3 status;
427 union {
428 CREATE3resok resok;
429 CREATE3resfail resfail;
430 } CREATE3res_u;
431 };
432 typedef struct CREATE3res CREATE3res;
433
434 struct REMOVE3args {
435 diropargs3 object;
436 };
437 typedef struct REMOVE3args REMOVE3args;
438
439 struct REMOVE3resok {
440 wcc_data dir_wcc;
441 };
442 typedef struct REMOVE3resok REMOVE3resok;
443
444 struct REMOVE3resfail {
445 wcc_data dir_wcc;
446 };
447 typedef struct REMOVE3resfail REMOVE3resfail;
448
449 struct REMOVE3res {
450 nfsstat3 status;
451 union {
452 REMOVE3resok resok;
453 REMOVE3resfail resfail;
454 } REMOVE3res_u;
455 };
456 typedef struct REMOVE3res REMOVE3res;
457
458 struct READ3args {
459 nfs_fh3 file;
460 offset3 offset;
461 count3 count;
462 };
463 typedef struct READ3args READ3args;
464
465 struct READ3resok {
466 post_op_attr file_attributes;
467 count3 count;
468 bool_t eof;
469 struct {
470 u_int data_len;
471 char *data_val;
472 } data;
473 };
474 typedef struct READ3resok READ3resok;
475
476 struct READ3resfail {
477 post_op_attr file_attributes;
478 };
479 typedef struct READ3resfail READ3resfail;
480
481 struct READ3res {
482 nfsstat3 status;
483 union {
484 READ3resok resok;
485 READ3resfail resfail;
486 } READ3res_u;
487 };
488 typedef struct READ3res READ3res;
489 #define FSF3_LINK 0x0001
490 #define FSF3_SYMLINK 0x0002
491 #define FSF3_HOMOGENEOUS 0x0008
492 #define FSF3_CANSETTIME 0x0010
493
494 struct FSINFO3args {
495 nfs_fh3 fsroot;
496 };
497 typedef struct FSINFO3args FSINFO3args;
498
499 struct FSINFO3resok {
500 post_op_attr obj_attributes;
501 u_int rtmax;
502 u_int rtpref;
503 u_int rtmult;
504 u_int wtmax;
505 u_int wtpref;
506 u_int wtmult;
507 u_int dtpref;
508 size3 maxfilesize;
509 nfstime3 time_delta;
510 u_int properties;
511 };
512 typedef struct FSINFO3resok FSINFO3resok;
513
514 struct FSINFO3resfail {
515 post_op_attr obj_attributes;
516 };
517 typedef struct FSINFO3resfail FSINFO3resfail;
518
519 struct FSINFO3res {
520 nfsstat3 status;
521 union {
522 FSINFO3resok resok;
523 FSINFO3resfail resfail;
524 } FSINFO3res_u;
525 };
526 typedef struct FSINFO3res FSINFO3res;
527
528 struct FSSTAT3args {
529 nfs_fh3 fsroot;
530 };
531 typedef struct FSSTAT3args FSSTAT3args;
532
533 struct FSSTAT3resok {
534 post_op_attr obj_attributes;
535 size3 tbytes;
536 size3 fbytes;
537 size3 abytes;
538 size3 tfiles;
539 size3 ffiles;
540 size3 afiles;
541 u_int invarsec;
542 };
543 typedef struct FSSTAT3resok FSSTAT3resok;
544
545 struct FSSTAT3resfail {
546 post_op_attr obj_attributes;
547 };
548 typedef struct FSSTAT3resfail FSSTAT3resfail;
549
550 struct FSSTAT3res {
551 nfsstat3 status;
552 union {
553 FSSTAT3resok resok;
554 FSSTAT3resfail resfail;
555 } FSSTAT3res_u;
556 };
557 typedef struct FSSTAT3res FSSTAT3res;
558
559 struct PATHCONF3args {
560 nfs_fh3 object;
561 };
562 typedef struct PATHCONF3args PATHCONF3args;
563
564 struct PATHCONF3resok {
565 post_op_attr obj_attributes;
566 u_int linkmax;
567 u_int name_max;
568 bool_t no_trunc;
569 bool_t chown_restricted;
570 bool_t case_insensitive;
571 bool_t case_preserving;
572 };
573 typedef struct PATHCONF3resok PATHCONF3resok;
574
575 struct PATHCONF3resfail {
576 post_op_attr obj_attributes;
577 };
578 typedef struct PATHCONF3resfail PATHCONF3resfail;
579
580 struct PATHCONF3res {
581 nfsstat3 status;
582 union {
583 PATHCONF3resok resok;
584 PATHCONF3resfail resfail;
585 } PATHCONF3res_u;
586 };
587 typedef struct PATHCONF3res PATHCONF3res;
588
589 typedef char *nfspath3;
590
591 struct symlinkdata3 {
592 sattr3 symlink_attributes;
593 nfspath3 symlink_data;
594 };
595 typedef struct symlinkdata3 symlinkdata3;
596
597 struct SYMLINK3args {
598 diropargs3 where;
599 symlinkdata3 symlink;
600 };
601 typedef struct SYMLINK3args SYMLINK3args;
602
603 struct SYMLINK3resok {
604 post_op_fh3 obj;
605 post_op_attr obj_attributes;
606 wcc_data dir_wcc;
607 };
608 typedef struct SYMLINK3resok SYMLINK3resok;
609
610 struct SYMLINK3resfail {
611 wcc_data dir_wcc;
612 };
613 typedef struct SYMLINK3resfail SYMLINK3resfail;
614
615 struct SYMLINK3res {
616 nfsstat3 status;
617 union {
618 SYMLINK3resok resok;
619 SYMLINK3resfail resfail;
620 } SYMLINK3res_u;
621 };
622 typedef struct SYMLINK3res SYMLINK3res;
623
624 struct READLINK3args {
625 nfs_fh3 symlink;
626 };
627 typedef struct READLINK3args READLINK3args;
628
629 struct READLINK3resok {
630 post_op_attr symlink_attributes;
631 nfspath3 data;
632 };
633 typedef struct READLINK3resok READLINK3resok;
634
635 struct READLINK3resfail {
636 post_op_attr symlink_attributes;
637 };
638 typedef struct READLINK3resfail READLINK3resfail;
639
640 struct READLINK3res {
641 nfsstat3 status;
642 union {
643 READLINK3resok resok;
644 READLINK3resfail resfail;
645 } READLINK3res_u;
646 };
647 typedef struct READLINK3res READLINK3res;
648
649 struct devicedata3 {
650 sattr3 dev_attributes;
651 specdata3 spec;
652 };
653 typedef struct devicedata3 devicedata3;
654
655 struct mknoddata3 {
656 ftype3 type;
657 union {
658 devicedata3 chr_device;
659 devicedata3 blk_device;
660 sattr3 sock_attributes;
661 sattr3 pipe_attributes;
662 } mknoddata3_u;
663 };
664 typedef struct mknoddata3 mknoddata3;
665
666 struct MKNOD3args {
667 diropargs3 where;
668 mknoddata3 what;
669 };
670 typedef struct MKNOD3args MKNOD3args;
671
672 struct MKNOD3resok {
673 post_op_fh3 obj;
674 post_op_attr obj_attributes;
675 wcc_data dir_wcc;
676 };
677 typedef struct MKNOD3resok MKNOD3resok;
678
679 struct MKNOD3resfail {
680 wcc_data dir_wcc;
681 };
682 typedef struct MKNOD3resfail MKNOD3resfail;
683
684 struct MKNOD3res {
685 nfsstat3 status;
686 union {
687 MKNOD3resok resok;
688 MKNOD3resfail resfail;
689 } MKNOD3res_u;
690 };
691 typedef struct MKNOD3res MKNOD3res;
692
693 struct MKDIR3args {
694 diropargs3 where;
695 sattr3 attributes;
696 };
697 typedef struct MKDIR3args MKDIR3args;
698
699 struct MKDIR3resok {
700 post_op_fh3 obj;
701 post_op_attr obj_attributes;
702 wcc_data dir_wcc;
703 };
704 typedef struct MKDIR3resok MKDIR3resok;
705
706 struct MKDIR3resfail {
707 wcc_data dir_wcc;
708 };
709 typedef struct MKDIR3resfail MKDIR3resfail;
710
711 struct MKDIR3res {
712 nfsstat3 status;
713 union {
714 MKDIR3resok resok;
715 MKDIR3resfail resfail;
716 } MKDIR3res_u;
717 };
718 typedef struct MKDIR3res MKDIR3res;
719
720 struct RMDIR3args {
721 diropargs3 object;
722 };
723 typedef struct RMDIR3args RMDIR3args;
724
725 struct RMDIR3resok {
726 wcc_data dir_wcc;
727 };
728 typedef struct RMDIR3resok RMDIR3resok;
729
730 struct RMDIR3resfail {
731 wcc_data dir_wcc;
732 };
733 typedef struct RMDIR3resfail RMDIR3resfail;
734
735 struct RMDIR3res {
736 nfsstat3 status;
737 union {
738 RMDIR3resok resok;
739 RMDIR3resfail resfail;
740 } RMDIR3res_u;
741 };
742 typedef struct RMDIR3res RMDIR3res;
743
744 struct RENAME3args {
745 diropargs3 from;
746 diropargs3 to;
747 };
748 typedef struct RENAME3args RENAME3args;
749
750 struct RENAME3resok {
751 wcc_data fromdir_wcc;
752 wcc_data todir_wcc;
753 };
754 typedef struct RENAME3resok RENAME3resok;
755
756 struct RENAME3resfail {
757 wcc_data fromdir_wcc;
758 wcc_data todir_wcc;
759 };
760 typedef struct RENAME3resfail RENAME3resfail;
761
762 struct RENAME3res {
763 nfsstat3 status;
764 union {
765 RENAME3resok resok;
766 RENAME3resfail resfail;
767 } RENAME3res_u;
768 };
769 typedef struct RENAME3res RENAME3res;
770
771 struct READDIRPLUS3args {
772 nfs_fh3 dir;
773 cookie3 cookie;
774 cookieverf3 cookieverf;
775 count3 dircount;
776 count3 maxcount;
777 };
778 typedef struct READDIRPLUS3args READDIRPLUS3args;
779
780 struct entryplus3 {
781 fileid3 fileid;
782 filename3 name;
783 cookie3 cookie;
784 post_op_attr name_attributes;
785 post_op_fh3 name_handle;
786 struct entryplus3 *nextentry;
787 };
788 typedef struct entryplus3 entryplus3;
789
790 struct dirlistplus3 {
791 entryplus3 *entries;
792 bool_t eof;
793 };
794 typedef struct dirlistplus3 dirlistplus3;
795
796 struct READDIRPLUS3resok {
797 post_op_attr dir_attributes;
798 cookieverf3 cookieverf;
799 dirlistplus3 reply;
800 };
801 typedef struct READDIRPLUS3resok READDIRPLUS3resok;
802
803 struct READDIRPLUS3resfail {
804 post_op_attr dir_attributes;
805 };
806 typedef struct READDIRPLUS3resfail READDIRPLUS3resfail;
807
808 struct READDIRPLUS3res {
809 nfsstat3 status;
810 union {
811 READDIRPLUS3resok resok;
812 READDIRPLUS3resfail resfail;
813 } READDIRPLUS3res_u;
814 };
815 typedef struct READDIRPLUS3res READDIRPLUS3res;
816
817 struct READDIR3args {
818 nfs_fh3 dir;
819 cookie3 cookie;
820 cookieverf3 cookieverf;
821 count3 count;
822 };
823 typedef struct READDIR3args READDIR3args;
824
825 struct entry3 {
826 fileid3 fileid;
827 filename3 name;
828 cookie3 cookie;
829 struct entry3 *nextentry;
830 };
831 typedef struct entry3 entry3;
832
833 struct dirlist3 {
834 entry3 *entries;
835 bool_t eof;
836 };
837 typedef struct dirlist3 dirlist3;
838
839 struct READDIR3resok {
840 post_op_attr dir_attributes;
841 cookieverf3 cookieverf;
842 dirlist3 reply;
843 };
844 typedef struct READDIR3resok READDIR3resok;
845
846 struct READDIR3resfail {
847 post_op_attr dir_attributes;
848 };
849 typedef struct READDIR3resfail READDIR3resfail;
850
851 struct READDIR3res {
852 nfsstat3 status;
853 union {
854 READDIR3resok resok;
855 READDIR3resfail resfail;
856 } READDIR3res_u;
857 };
858 typedef struct READDIR3res READDIR3res;
859
860 struct LINK3args {
861 nfs_fh3 file;
862 diropargs3 link;
863 };
864 typedef struct LINK3args LINK3args;
865
866 struct LINK3resok {
867 post_op_attr file_attributes;
868 wcc_data linkdir_wcc;
869 };
870 typedef struct LINK3resok LINK3resok;
871
872 struct LINK3resfail {
873 post_op_attr file_attributes;
874 wcc_data linkdir_wcc;
875 };
876 typedef struct LINK3resfail LINK3resfail;
877
878 struct LINK3res {
879 nfsstat3 status;
880 union {
881 LINK3resok resok;
882 LINK3resfail resfail;
883 } LINK3res_u;
884 };
885 typedef struct LINK3res LINK3res;
886
887 struct sattrguard3 {
888 bool_t check;
889 union {
890 nfstime3 obj_ctime;
891 } sattrguard3_u;
892 };
893 typedef struct sattrguard3 sattrguard3;
894
895 struct SETATTR3args {
896 nfs_fh3 object;
897 sattr3 new_attributes;
898 sattrguard3 guard;
899 };
900 typedef struct SETATTR3args SETATTR3args;
901
902 struct SETATTR3resok {
903 wcc_data obj_wcc;
904 };
905 typedef struct SETATTR3resok SETATTR3resok;
906
907 struct SETATTR3resfail {
908 wcc_data obj_wcc;
909 };
910 typedef struct SETATTR3resfail SETATTR3resfail;
911
912 struct SETATTR3res {
913 nfsstat3 status;
914 union {
915 SETATTR3resok resok;
916 SETATTR3resfail resfail;
917 } SETATTR3res_u;
918 };
919 typedef struct SETATTR3res SETATTR3res;
920
921 enum nfsacl_type {
922 NFSACL_TYPE_USER_OBJ = 0x0001,
923 NFSACL_TYPE_USER = 0x0002,
924 NFSACL_TYPE_GROUP_OBJ = 0x0004,
925 NFSACL_TYPE_GROUP = 0x0008,
926 NFSACL_TYPE_CLASS_OBJ = 0x0010,
927 NFSACL_TYPE_CLASS = 0x0020,
928 NFSACL_TYPE_DEFAULT = 0x1000,
929 NFSACL_TYPE_DEFAULT_USER_OBJ = 0x1001,
930 NFSACL_TYPE_DEFAULT_USER = 0x1002,
931 NFSACL_TYPE_DEFAULT_GROUP_OBJ = 0x1004,
932 NFSACL_TYPE_DEFAULT_GROUP = 0x1008,
933 NFSACL_TYPE_DEFAULT_CLASS_OBJ = 0x1010,
934 NFSACL_TYPE_DEFAULT_OTHER_OBJ = 0x1020,
935 };
936 typedef enum nfsacl_type nfsacl_type;
937 #define NFSACL_PERM_READ 0x04
938 #define NFSACL_PERM_WRITE 0x02
939 #define NFSACL_PERM_EXEC 0x01
940
941 struct nfsacl_ace {
942 enum nfsacl_type type;
943 u_int id;
944 u_int perm;
945 };
946 typedef struct nfsacl_ace nfsacl_ace;
947 #define NFSACL_MASK_ACL_ENTRY 0x0001
948 #define NFSACL_MASK_ACL_COUNT 0x0002
949 #define NFSACL_MASK_ACL_DEFAULT_ENTRY 0x0004
950 #define NFSACL_MASK_ACL_DEFAULT_COUNT 0x0008
951
952 struct GETACL3args {
953 nfs_fh3 dir;
954 u_int mask;
955 };
956 typedef struct GETACL3args GETACL3args;
957
958 struct GETACL3resok {
959 post_op_attr attr;
960 u_int mask;
961 u_int ace_count;
962 struct {
963 u_int ace_len;
964 struct nfsacl_ace *ace_val;
965 } ace;
966 u_int default_ace_count;
967 struct {
968 u_int default_ace_len;
969 struct nfsacl_ace *default_ace_val;
970 } default_ace;
971 };
972 typedef struct GETACL3resok GETACL3resok;
973
974 struct GETACL3res {
975 nfsstat3 status;
976 union {
977 GETACL3resok resok;
978 } GETACL3res_u;
979 };
980 typedef struct GETACL3res GETACL3res;
981
982 struct SETACL3args {
983 nfs_fh3 dir;
984 u_int mask;
985 u_int ace_count;
986 struct {
987 u_int ace_len;
988 struct nfsacl_ace *ace_val;
989 } ace;
990 u_int default_ace_count;
991 struct {
992 u_int default_ace_len;
993 struct nfsacl_ace *default_ace_val;
994 } default_ace;
995 };
996 typedef struct SETACL3args SETACL3args;
997
998 struct SETACL3resok {
999 post_op_attr attr;
1000 };
1001 typedef struct SETACL3resok SETACL3resok;
1002
1003 struct SETACL3res {
1004 nfsstat3 status;
1005 union {
1006 SETACL3resok resok;
1007 } SETACL3res_u;
1008 };
1009 typedef struct SETACL3res SETACL3res;
1010
1011 #define NFS_PROGRAM 100003
1012 #define NFS_V3 3
1013
1014 #if defined(__STDC__) || defined(__cplusplus)
1015 #define NFS3_NULL 0
1016 extern void * nfs3_null_3(void *, CLIENT *);
1017 extern void * nfs3_null_3_svc(void *, struct svc_req *);
1018 #define NFS3_GETATTR 1
1019 extern GETATTR3res * nfs3_getattr_3(GETATTR3args *, CLIENT *);
1020 extern GETATTR3res * nfs3_getattr_3_svc(GETATTR3args *, struct svc_req *);
1021 #define NFS3_SETATTR 2
1022 extern SETATTR3res * nfs3_setattr_3(SETATTR3args *, CLIENT *);
1023 extern SETATTR3res * nfs3_setattr_3_svc(SETATTR3args *, struct svc_req *);
1024 #define NFS3_LOOKUP 3
1025 extern LOOKUP3res * nfs3_lookup_3(LOOKUP3args *, CLIENT *);
1026 extern LOOKUP3res * nfs3_lookup_3_svc(LOOKUP3args *, struct svc_req *);
1027 #define NFS3_ACCESS 4
1028 extern ACCESS3res * nfs3_access_3(ACCESS3args *, CLIENT *);
1029 extern ACCESS3res * nfs3_access_3_svc(ACCESS3args *, struct svc_req *);
1030 #define NFS3_READLINK 5
1031 extern READLINK3res * nfs3_readlink_3(READLINK3args *, CLIENT *);
1032 extern READLINK3res * nfs3_readlink_3_svc(READLINK3args *, struct svc_req *);
1033 #define NFS3_READ 6
1034 extern READ3res * nfs3_read_3(READ3args *, CLIENT *);
1035 extern READ3res * nfs3_read_3_svc(READ3args *, struct svc_req *);
1036 #define NFS3_WRITE 7
1037 extern WRITE3res * nfs3_write_3(WRITE3args *, CLIENT *);
1038 extern WRITE3res * nfs3_write_3_svc(WRITE3args *, struct svc_req *);
1039 #define NFS3_CREATE 8
1040 extern CREATE3res * nfs3_create_3(CREATE3args *, CLIENT *);
1041 extern CREATE3res * nfs3_create_3_svc(CREATE3args *, struct svc_req *);
1042 #define NFS3_MKDIR 9
1043 extern MKDIR3res * nfs3_mkdir_3(MKDIR3args *, CLIENT *);
1044 extern MKDIR3res * nfs3_mkdir_3_svc(MKDIR3args *, struct svc_req *);
1045 #define NFS3_SYMLINK 10
1046 extern SYMLINK3res * nfs3_symlink_3(SYMLINK3args *, CLIENT *);
1047 extern SYMLINK3res * nfs3_symlink_3_svc(SYMLINK3args *, struct svc_req *);
1048 #define NFS3_MKNOD 11
1049 extern MKNOD3res * nfs3_mknod_3(MKNOD3args *, CLIENT *);
1050 extern MKNOD3res * nfs3_mknod_3_svc(MKNOD3args *, struct svc_req *);
1051 #define NFS3_REMOVE 12
1052 extern REMOVE3res * nfs3_remove_3(REMOVE3args *, CLIENT *);
1053 extern REMOVE3res * nfs3_remove_3_svc(REMOVE3args *, struct svc_req *);
1054 #define NFS3_RMDIR 13
1055 extern RMDIR3res * nfs3_rmdir_3(RMDIR3args *, CLIENT *);
1056 extern RMDIR3res * nfs3_rmdir_3_svc(RMDIR3args *, struct svc_req *);
1057 #define NFS3_RENAME 14
1058 extern RENAME3res * nfs3_rename_3(RENAME3args *, CLIENT *);
1059 extern RENAME3res * nfs3_rename_3_svc(RENAME3args *, struct svc_req *);
1060 #define NFS3_LINK 15
1061 extern LINK3res * nfs3_link_3(LINK3args *, CLIENT *);
1062 extern LINK3res * nfs3_link_3_svc(LINK3args *, struct svc_req *);
1063 #define NFS3_READDIR 16
1064 extern READDIR3res * nfs3_readdir_3(READDIR3args *, CLIENT *);
1065 extern READDIR3res * nfs3_readdir_3_svc(READDIR3args *, struct svc_req *);
1066 #define NFS3_READDIRPLUS 17
1067 extern READDIRPLUS3res * nfs3_readdirplus_3(READDIRPLUS3args *, CLIENT *);
1068 extern READDIRPLUS3res * nfs3_readdirplus_3_svc(READDIRPLUS3args *, struct svc_req *);
1069 #define NFS3_FSSTAT 18
1070 extern FSSTAT3res * nfs3_fsstat_3(FSSTAT3args *, CLIENT *);
1071 extern FSSTAT3res * nfs3_fsstat_3_svc(FSSTAT3args *, struct svc_req *);
1072 #define NFS3_FSINFO 19
1073 extern FSINFO3res * nfs3_fsinfo_3(FSINFO3args *, CLIENT *);
1074 extern FSINFO3res * nfs3_fsinfo_3_svc(FSINFO3args *, struct svc_req *);
1075 #define NFS3_PATHCONF 20
1076 extern PATHCONF3res * nfs3_pathconf_3(PATHCONF3args *, CLIENT *);
1077 extern PATHCONF3res * nfs3_pathconf_3_svc(PATHCONF3args *, struct svc_req *);
1078 #define NFS3_COMMIT 21
1079 extern COMMIT3res * nfs3_commit_3(COMMIT3args *, CLIENT *);
1080 extern COMMIT3res * nfs3_commit_3_svc(COMMIT3args *, struct svc_req *);
1081 extern int nfs_program_3_freeresult (SVCXPRT *, zdrproc_t, caddr_t);
1082
1083 #else /* K&R C */
1084 #define NFS3_NULL 0
1085 extern void * nfs3_null_3();
1086 extern void * nfs3_null_3_svc();
1087 #define NFS3_GETATTR 1
1088 extern GETATTR3res * nfs3_getattr_3();
1089 extern GETATTR3res * nfs3_getattr_3_svc();
1090 #define NFS3_SETATTR 2
1091 extern SETATTR3res * nfs3_setattr_3();
1092 extern SETATTR3res * nfs3_setattr_3_svc();
1093 #define NFS3_LOOKUP 3
1094 extern LOOKUP3res * nfs3_lookup_3();
1095 extern LOOKUP3res * nfs3_lookup_3_svc();
1096 #define NFS3_ACCESS 4
1097 extern ACCESS3res * nfs3_access_3();
1098 extern ACCESS3res * nfs3_access_3_svc();
1099 #define NFS3_READLINK 5
1100 extern READLINK3res * nfs3_readlink_3();
1101 extern READLINK3res * nfs3_readlink_3_svc();
1102 #define NFS3_READ 6
1103 extern READ3res * nfs3_read_3();
1104 extern READ3res * nfs3_read_3_svc();
1105 #define NFS3_WRITE 7
1106 extern WRITE3res * nfs3_write_3();
1107 extern WRITE3res * nfs3_write_3_svc();
1108 #define NFS3_CREATE 8
1109 extern CREATE3res * nfs3_create_3();
1110 extern CREATE3res * nfs3_create_3_svc();
1111 #define NFS3_MKDIR 9
1112 extern MKDIR3res * nfs3_mkdir_3();
1113 extern MKDIR3res * nfs3_mkdir_3_svc();
1114 #define NFS3_SYMLINK 10
1115 extern SYMLINK3res * nfs3_symlink_3();
1116 extern SYMLINK3res * nfs3_symlink_3_svc();
1117 #define NFS3_MKNOD 11
1118 extern MKNOD3res * nfs3_mknod_3();
1119 extern MKNOD3res * nfs3_mknod_3_svc();
1120 #define NFS3_REMOVE 12
1121 extern REMOVE3res * nfs3_remove_3();
1122 extern REMOVE3res * nfs3_remove_3_svc();
1123 #define NFS3_RMDIR 13
1124 extern RMDIR3res * nfs3_rmdir_3();
1125 extern RMDIR3res * nfs3_rmdir_3_svc();
1126 #define NFS3_RENAME 14
1127 extern RENAME3res * nfs3_rename_3();
1128 extern RENAME3res * nfs3_rename_3_svc();
1129 #define NFS3_LINK 15
1130 extern LINK3res * nfs3_link_3();
1131 extern LINK3res * nfs3_link_3_svc();
1132 #define NFS3_READDIR 16
1133 extern READDIR3res * nfs3_readdir_3();
1134 extern READDIR3res * nfs3_readdir_3_svc();
1135 #define NFS3_READDIRPLUS 17
1136 extern READDIRPLUS3res * nfs3_readdirplus_3();
1137 extern READDIRPLUS3res * nfs3_readdirplus_3_svc();
1138 #define NFS3_FSSTAT 18
1139 extern FSSTAT3res * nfs3_fsstat_3();
1140 extern FSSTAT3res * nfs3_fsstat_3_svc();
1141 #define NFS3_FSINFO 19
1142 extern FSINFO3res * nfs3_fsinfo_3();
1143 extern FSINFO3res * nfs3_fsinfo_3_svc();
1144 #define NFS3_PATHCONF 20
1145 extern PATHCONF3res * nfs3_pathconf_3();
1146 extern PATHCONF3res * nfs3_pathconf_3_svc();
1147 #define NFS3_COMMIT 21
1148 extern COMMIT3res * nfs3_commit_3();
1149 extern COMMIT3res * nfs3_commit_3_svc();
1150 extern int nfs_program_3_freeresult ();
1151 #endif /* K&R C */
1152
1153 #define NFSACL_PROGRAM 100227
1154 #define NFSACL_V3 3
1155
1156 #if defined(__STDC__) || defined(__cplusplus)
1157 #define NFSACL3_NULL 0
1158 extern void * nfsacl3_null_3(void *, CLIENT *);
1159 extern void * nfsacl3_null_3_svc(void *, struct svc_req *);
1160 #define NFSACL3_GETACL 1
1161 extern GETACL3res * nfsacl3_getacl_3(GETACL3args *, CLIENT *);
1162 extern GETACL3res * nfsacl3_getacl_3_svc(GETACL3args *, struct svc_req *);
1163 #define NFSACL3_SETACL 2
1164 extern SETACL3res * nfsacl3_setacl_3(SETACL3args *, CLIENT *);
1165 extern SETACL3res * nfsacl3_setacl_3_svc(SETACL3args *, struct svc_req *);
1166 extern int nfsacl_program_3_freeresult (SVCXPRT *, zdrproc_t, caddr_t);
1167
1168 #else /* K&R C */
1169 #define NFSACL3_NULL 0
1170 extern void * nfsacl3_null_3();
1171 extern void * nfsacl3_null_3_svc();
1172 #define NFSACL3_GETACL 1
1173 extern GETACL3res * nfsacl3_getacl_3();
1174 extern GETACL3res * nfsacl3_getacl_3_svc();
1175 #define NFSACL3_SETACL 2
1176 extern SETACL3res * nfsacl3_setacl_3();
1177 extern SETACL3res * nfsacl3_setacl_3_svc();
1178 extern int nfsacl_program_3_freeresult ();
1179 #endif /* K&R C */
1180
1181 /* the zdr functions */
1182
1183 #if defined(__STDC__) || defined(__cplusplus)
1184 extern bool_t zdr_cookieverf3 (ZDR *, cookieverf3);
1185 extern bool_t zdr_uint64 (ZDR *, uint64*);
1186 extern bool_t zdr_cookie3 (ZDR *, cookie3*);
1187 extern bool_t zdr_nfs_fh3 (ZDR *, nfs_fh3*);
1188 extern bool_t zdr_filename3 (ZDR *, filename3*);
1189 extern bool_t zdr_diropargs3 (ZDR *, diropargs3*);
1190 extern bool_t zdr_ftype3 (ZDR *, ftype3*);
1191 extern bool_t zdr_mode3 (ZDR *, mode3*);
1192 extern bool_t zdr_uid3 (ZDR *, uid3*);
1193 extern bool_t zdr_gid3 (ZDR *, gid3*);
1194 extern bool_t zdr_size3 (ZDR *, size3*);
1195 extern bool_t zdr_fileid3 (ZDR *, fileid3*);
1196 extern bool_t zdr_specdata3 (ZDR *, specdata3*);
1197 extern bool_t zdr_nfstime3 (ZDR *, nfstime3*);
1198 extern bool_t zdr_fattr3 (ZDR *, fattr3*);
1199 extern bool_t zdr_post_op_attr (ZDR *, post_op_attr*);
1200 extern bool_t zdr_nfsstat3 (ZDR *, nfsstat3*);
1201 extern bool_t zdr_stable_how (ZDR *, stable_how*);
1202 extern bool_t zdr_offset3 (ZDR *, offset3*);
1203 extern bool_t zdr_count3 (ZDR *, count3*);
1204 extern bool_t zdr_wcc_attr (ZDR *, wcc_attr*);
1205 extern bool_t zdr_pre_op_attr (ZDR *, pre_op_attr*);
1206 extern bool_t zdr_wcc_data (ZDR *, wcc_data*);
1207 extern bool_t zdr_WRITE3args (ZDR *, WRITE3args*);
1208 extern bool_t zdr_writeverf3 (ZDR *, writeverf3);
1209 extern bool_t zdr_WRITE3resok (ZDR *, WRITE3resok*);
1210 extern bool_t zdr_WRITE3resfail (ZDR *, WRITE3resfail*);
1211 extern bool_t zdr_WRITE3res (ZDR *, WRITE3res*);
1212 extern bool_t zdr_LOOKUP3args (ZDR *, LOOKUP3args*);
1213 extern bool_t zdr_LOOKUP3resok (ZDR *, LOOKUP3resok*);
1214 extern bool_t zdr_LOOKUP3resfail (ZDR *, LOOKUP3resfail*);
1215 extern bool_t zdr_LOOKUP3res (ZDR *, LOOKUP3res*);
1216 extern bool_t zdr_COMMIT3args (ZDR *, COMMIT3args*);
1217 extern bool_t zdr_COMMIT3resok (ZDR *, COMMIT3resok*);
1218 extern bool_t zdr_COMMIT3resfail (ZDR *, COMMIT3resfail*);
1219 extern bool_t zdr_COMMIT3res (ZDR *, COMMIT3res*);
1220 extern bool_t zdr_ACCESS3args (ZDR *, ACCESS3args*);
1221 extern bool_t zdr_ACCESS3resok (ZDR *, ACCESS3resok*);
1222 extern bool_t zdr_ACCESS3resfail (ZDR *, ACCESS3resfail*);
1223 extern bool_t zdr_ACCESS3res (ZDR *, ACCESS3res*);
1224 extern bool_t zdr_GETATTR3args (ZDR *, GETATTR3args*);
1225 extern bool_t zdr_GETATTR3resok (ZDR *, GETATTR3resok*);
1226 extern bool_t zdr_GETATTR3res (ZDR *, GETATTR3res*);
1227 extern bool_t zdr_time_how (ZDR *, time_how*);
1228 extern bool_t zdr_set_mode3 (ZDR *, set_mode3*);
1229 extern bool_t zdr_set_uid3 (ZDR *, set_uid3*);
1230 extern bool_t zdr_set_gid3 (ZDR *, set_gid3*);
1231 extern bool_t zdr_set_size3 (ZDR *, set_size3*);
1232 extern bool_t zdr_set_atime (ZDR *, set_atime*);
1233 extern bool_t zdr_set_mtime (ZDR *, set_mtime*);
1234 extern bool_t zdr_sattr3 (ZDR *, sattr3*);
1235 extern bool_t zdr_createmode3 (ZDR *, createmode3*);
1236 extern bool_t zdr_createverf3 (ZDR *, createverf3);
1237 extern bool_t zdr_createhow3 (ZDR *, createhow3*);
1238 extern bool_t zdr_CREATE3args (ZDR *, CREATE3args*);
1239 extern bool_t zdr_post_op_fh3 (ZDR *, post_op_fh3*);
1240 extern bool_t zdr_CREATE3resok (ZDR *, CREATE3resok*);
1241 extern bool_t zdr_CREATE3resfail (ZDR *, CREATE3resfail*);
1242 extern bool_t zdr_CREATE3res (ZDR *, CREATE3res*);
1243 extern bool_t zdr_REMOVE3args (ZDR *, REMOVE3args*);
1244 extern bool_t zdr_REMOVE3resok (ZDR *, REMOVE3resok*);
1245 extern bool_t zdr_REMOVE3resfail (ZDR *, REMOVE3resfail*);
1246 extern bool_t zdr_REMOVE3res (ZDR *, REMOVE3res*);
1247 extern bool_t zdr_READ3args (ZDR *, READ3args*);
1248 extern bool_t zdr_READ3resok (ZDR *, READ3resok*);
1249 extern bool_t zdr_READ3resfail (ZDR *, READ3resfail*);
1250 extern bool_t zdr_READ3res (ZDR *, READ3res*);
1251 extern bool_t zdr_FSINFO3args (ZDR *, FSINFO3args*);
1252 extern bool_t zdr_FSINFO3resok (ZDR *, FSINFO3resok*);
1253 extern bool_t zdr_FSINFO3resfail (ZDR *, FSINFO3resfail*);
1254 extern bool_t zdr_FSINFO3res (ZDR *, FSINFO3res*);
1255 extern bool_t zdr_FSSTAT3args (ZDR *, FSSTAT3args*);
1256 extern bool_t zdr_FSSTAT3resok (ZDR *, FSSTAT3resok*);
1257 extern bool_t zdr_FSSTAT3resfail (ZDR *, FSSTAT3resfail*);
1258 extern bool_t zdr_FSSTAT3res (ZDR *, FSSTAT3res*);
1259 extern bool_t zdr_PATHCONF3args (ZDR *, PATHCONF3args*);
1260 extern bool_t zdr_PATHCONF3resok (ZDR *, PATHCONF3resok*);
1261 extern bool_t zdr_PATHCONF3resfail (ZDR *, PATHCONF3resfail*);
1262 extern bool_t zdr_PATHCONF3res (ZDR *, PATHCONF3res*);
1263 extern bool_t zdr_nfspath3 (ZDR *, nfspath3*);
1264 extern bool_t zdr_symlinkdata3 (ZDR *, symlinkdata3*);
1265 extern bool_t zdr_SYMLINK3args (ZDR *, SYMLINK3args*);
1266 extern bool_t zdr_SYMLINK3resok (ZDR *, SYMLINK3resok*);
1267 extern bool_t zdr_SYMLINK3resfail (ZDR *, SYMLINK3resfail*);
1268 extern bool_t zdr_SYMLINK3res (ZDR *, SYMLINK3res*);
1269 extern bool_t zdr_READLINK3args (ZDR *, READLINK3args*);
1270 extern bool_t zdr_READLINK3resok (ZDR *, READLINK3resok*);
1271 extern bool_t zdr_READLINK3resfail (ZDR *, READLINK3resfail*);
1272 extern bool_t zdr_READLINK3res (ZDR *, READLINK3res*);
1273 extern bool_t zdr_devicedata3 (ZDR *, devicedata3*);
1274 extern bool_t zdr_mknoddata3 (ZDR *, mknoddata3*);
1275 extern bool_t zdr_MKNOD3args (ZDR *, MKNOD3args*);
1276 extern bool_t zdr_MKNOD3resok (ZDR *, MKNOD3resok*);
1277 extern bool_t zdr_MKNOD3resfail (ZDR *, MKNOD3resfail*);
1278 extern bool_t zdr_MKNOD3res (ZDR *, MKNOD3res*);
1279 extern bool_t zdr_MKDIR3args (ZDR *, MKDIR3args*);
1280 extern bool_t zdr_MKDIR3resok (ZDR *, MKDIR3resok*);
1281 extern bool_t zdr_MKDIR3resfail (ZDR *, MKDIR3resfail*);
1282 extern bool_t zdr_MKDIR3res (ZDR *, MKDIR3res*);
1283 extern bool_t zdr_RMDIR3args (ZDR *, RMDIR3args*);
1284 extern bool_t zdr_RMDIR3resok (ZDR *, RMDIR3resok*);
1285 extern bool_t zdr_RMDIR3resfail (ZDR *, RMDIR3resfail*);
1286 extern bool_t zdr_RMDIR3res (ZDR *, RMDIR3res*);
1287 extern bool_t zdr_RENAME3args (ZDR *, RENAME3args*);
1288 extern bool_t zdr_RENAME3resok (ZDR *, RENAME3resok*);
1289 extern bool_t zdr_RENAME3resfail (ZDR *, RENAME3resfail*);
1290 extern bool_t zdr_RENAME3res (ZDR *, RENAME3res*);
1291 extern bool_t zdr_READDIRPLUS3args (ZDR *, READDIRPLUS3args*);
1292 extern bool_t zdr_entryplus3 (ZDR *, entryplus3*);
1293 extern bool_t zdr_dirlistplus3 (ZDR *, dirlistplus3*);
1294 extern bool_t zdr_READDIRPLUS3resok (ZDR *, READDIRPLUS3resok*);
1295 extern bool_t zdr_READDIRPLUS3resfail (ZDR *, READDIRPLUS3resfail*);
1296 extern bool_t zdr_READDIRPLUS3res (ZDR *, READDIRPLUS3res*);
1297 extern bool_t zdr_READDIR3args (ZDR *, READDIR3args*);
1298 extern bool_t zdr_entry3 (ZDR *, entry3*);
1299 extern bool_t zdr_dirlist3 (ZDR *, dirlist3*);
1300 extern bool_t zdr_READDIR3resok (ZDR *, READDIR3resok*);
1301 extern bool_t zdr_READDIR3resfail (ZDR *, READDIR3resfail*);
1302 extern bool_t zdr_READDIR3res (ZDR *, READDIR3res*);
1303 extern bool_t zdr_LINK3args (ZDR *, LINK3args*);
1304 extern bool_t zdr_LINK3resok (ZDR *, LINK3resok*);
1305 extern bool_t zdr_LINK3resfail (ZDR *, LINK3resfail*);
1306 extern bool_t zdr_LINK3res (ZDR *, LINK3res*);
1307 extern bool_t zdr_sattrguard3 (ZDR *, sattrguard3*);
1308 extern bool_t zdr_SETATTR3args (ZDR *, SETATTR3args*);
1309 extern bool_t zdr_SETATTR3resok (ZDR *, SETATTR3resok*);
1310 extern bool_t zdr_SETATTR3resfail (ZDR *, SETATTR3resfail*);
1311 extern bool_t zdr_SETATTR3res (ZDR *, SETATTR3res*);
1312 extern bool_t zdr_nfsacl_type (ZDR *, nfsacl_type*);
1313 extern bool_t zdr_nfsacl_ace (ZDR *, nfsacl_ace*);
1314 extern bool_t zdr_GETACL3args (ZDR *, GETACL3args*);
1315 extern bool_t zdr_GETACL3resok (ZDR *, GETACL3resok*);
1316 extern bool_t zdr_GETACL3res (ZDR *, GETACL3res*);
1317 extern bool_t zdr_SETACL3args (ZDR *, SETACL3args*);
1318 extern bool_t zdr_SETACL3resok (ZDR *, SETACL3resok*);
1319 extern bool_t zdr_SETACL3res (ZDR *, SETACL3res*);
1320
1321 #else /* K&R C */
1322 extern bool_t zdr_cookieverf3 ();
1323 extern bool_t zdr_uint64 ();
1324 extern bool_t zdr_cookie3 ();
1325 extern bool_t zdr_nfs_fh3 ();
1326 extern bool_t zdr_filename3 ();
1327 extern bool_t zdr_diropargs3 ();
1328 extern bool_t zdr_ftype3 ();
1329 extern bool_t zdr_mode3 ();
1330 extern bool_t zdr_uid3 ();
1331 extern bool_t zdr_gid3 ();
1332 extern bool_t zdr_size3 ();
1333 extern bool_t zdr_fileid3 ();
1334 extern bool_t zdr_specdata3 ();
1335 extern bool_t zdr_nfstime3 ();
1336 extern bool_t zdr_fattr3 ();
1337 extern bool_t zdr_post_op_attr ();
1338 extern bool_t zdr_nfsstat3 ();
1339 extern bool_t zdr_stable_how ();
1340 extern bool_t zdr_offset3 ();
1341 extern bool_t zdr_count3 ();
1342 extern bool_t zdr_wcc_attr ();
1343 extern bool_t zdr_pre_op_attr ();
1344 extern bool_t zdr_wcc_data ();
1345 extern bool_t zdr_WRITE3args ();
1346 extern bool_t zdr_writeverf3 ();
1347 extern bool_t zdr_WRITE3resok ();
1348 extern bool_t zdr_WRITE3resfail ();
1349 extern bool_t zdr_WRITE3res ();
1350 extern bool_t zdr_LOOKUP3args ();
1351 extern bool_t zdr_LOOKUP3resok ();
1352 extern bool_t zdr_LOOKUP3resfail ();
1353 extern bool_t zdr_LOOKUP3res ();
1354 extern bool_t zdr_COMMIT3args ();
1355 extern bool_t zdr_COMMIT3resok ();
1356 extern bool_t zdr_COMMIT3resfail ();
1357 extern bool_t zdr_COMMIT3res ();
1358 extern bool_t zdr_ACCESS3args ();
1359 extern bool_t zdr_ACCESS3resok ();
1360 extern bool_t zdr_ACCESS3resfail ();
1361 extern bool_t zdr_ACCESS3res ();
1362 extern bool_t zdr_GETATTR3args ();
1363 extern bool_t zdr_GETATTR3resok ();
1364 extern bool_t zdr_GETATTR3res ();
1365 extern bool_t zdr_time_how ();
1366 extern bool_t zdr_set_mode3 ();
1367 extern bool_t zdr_set_uid3 ();
1368 extern bool_t zdr_set_gid3 ();
1369 extern bool_t zdr_set_size3 ();
1370 extern bool_t zdr_set_atime ();
1371 extern bool_t zdr_set_mtime ();
1372 extern bool_t zdr_sattr3 ();
1373 extern bool_t zdr_createmode3 ();
1374 extern bool_t zdr_createverf3 ();
1375 extern bool_t zdr_createhow3 ();
1376 extern bool_t zdr_CREATE3args ();
1377 extern bool_t zdr_post_op_fh3 ();
1378 extern bool_t zdr_CREATE3resok ();
1379 extern bool_t zdr_CREATE3resfail ();
1380 extern bool_t zdr_CREATE3res ();
1381 extern bool_t zdr_REMOVE3args ();
1382 extern bool_t zdr_REMOVE3resok ();
1383 extern bool_t zdr_REMOVE3resfail ();
1384 extern bool_t zdr_REMOVE3res ();
1385 extern bool_t zdr_READ3args ();
1386 extern bool_t zdr_READ3resok ();
1387 extern bool_t zdr_READ3resfail ();
1388 extern bool_t zdr_READ3res ();
1389 extern bool_t zdr_FSINFO3args ();
1390 extern bool_t zdr_FSINFO3resok ();
1391 extern bool_t zdr_FSINFO3resfail ();
1392 extern bool_t zdr_FSINFO3res ();
1393 extern bool_t zdr_FSSTAT3args ();
1394 extern bool_t zdr_FSSTAT3resok ();
1395 extern bool_t zdr_FSSTAT3resfail ();
1396 extern bool_t zdr_FSSTAT3res ();
1397 extern bool_t zdr_PATHCONF3args ();
1398 extern bool_t zdr_PATHCONF3resok ();
1399 extern bool_t zdr_PATHCONF3resfail ();
1400 extern bool_t zdr_PATHCONF3res ();
1401 extern bool_t zdr_nfspath3 ();
1402 extern bool_t zdr_symlinkdata3 ();
1403 extern bool_t zdr_SYMLINK3args ();
1404 extern bool_t zdr_SYMLINK3resok ();
1405 extern bool_t zdr_SYMLINK3resfail ();
1406 extern bool_t zdr_SYMLINK3res ();
1407 extern bool_t zdr_READLINK3args ();
1408 extern bool_t zdr_READLINK3resok ();
1409 extern bool_t zdr_READLINK3resfail ();
1410 extern bool_t zdr_READLINK3res ();
1411 extern bool_t zdr_devicedata3 ();
1412 extern bool_t zdr_mknoddata3 ();
1413 extern bool_t zdr_MKNOD3args ();
1414 extern bool_t zdr_MKNOD3resok ();
1415 extern bool_t zdr_MKNOD3resfail ();
1416 extern bool_t zdr_MKNOD3res ();
1417 extern bool_t zdr_MKDIR3args ();
1418 extern bool_t zdr_MKDIR3resok ();
1419 extern bool_t zdr_MKDIR3resfail ();
1420 extern bool_t zdr_MKDIR3res ();
1421 extern bool_t zdr_RMDIR3args ();
1422 extern bool_t zdr_RMDIR3resok ();
1423 extern bool_t zdr_RMDIR3resfail ();
1424 extern bool_t zdr_RMDIR3res ();
1425 extern bool_t zdr_RENAME3args ();
1426 extern bool_t zdr_RENAME3resok ();
1427 extern bool_t zdr_RENAME3resfail ();
1428 extern bool_t zdr_RENAME3res ();
1429 extern bool_t zdr_READDIRPLUS3args ();
1430 extern bool_t zdr_entryplus3 ();
1431 extern bool_t zdr_dirlistplus3 ();
1432 extern bool_t zdr_READDIRPLUS3resok ();
1433 extern bool_t zdr_READDIRPLUS3resfail ();
1434 extern bool_t zdr_READDIRPLUS3res ();
1435 extern bool_t zdr_READDIR3args ();
1436 extern bool_t zdr_entry3 ();
1437 extern bool_t zdr_dirlist3 ();
1438 extern bool_t zdr_READDIR3resok ();
1439 extern bool_t zdr_READDIR3resfail ();
1440 extern bool_t zdr_READDIR3res ();
1441 extern bool_t zdr_LINK3args ();
1442 extern bool_t zdr_LINK3resok ();
1443 extern bool_t zdr_LINK3resfail ();
1444 extern bool_t zdr_LINK3res ();
1445 extern bool_t zdr_sattrguard3 ();
1446 extern bool_t zdr_SETATTR3args ();
1447 extern bool_t zdr_SETATTR3resok ();
1448 extern bool_t zdr_SETATTR3resfail ();
1449 extern bool_t zdr_SETATTR3res ();
1450 extern bool_t zdr_nfsacl_type ();
1451 extern bool_t zdr_nfsacl_ace ();
1452 extern bool_t zdr_GETACL3args ();
1453 extern bool_t zdr_GETACL3resok ();
1454 extern bool_t zdr_GETACL3res ();
1455 extern bool_t zdr_SETACL3args ();
1456 extern bool_t zdr_SETACL3resok ();
1457 extern bool_t zdr_SETACL3res ();
1458
1459 #endif /* K&R C */
1460
1461 #ifdef __cplusplus
1462 }
1463 #endif
1464
1465 #endif /* !_NFS_H_RPCGEN */