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