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