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