1 /*
2 Copyright (c) 2014, Ronnie Sahlberg
3 All rights reserved.
4 
5 Redistribution and use in source and binary forms, with or without
6 modification, are permitted provided that the following conditions are met:
7 
8 1. Redistributions of source code must retain the above copyright notice, this
9    list of conditions and the following disclaimer.
10 2. Redistributions in binary form must reproduce the above copyright notice,
11    this list of conditions and the following disclaimer in the documentation
12    and/or other materials provided with the distribution.
13 
14 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
15 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
16 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
17 DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
18 ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
19 (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
20 LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
21 ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
22 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
23 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24 
25 The views and conclusions contained in the software and documentation are those
26 of the authors and should not be interpreted as representing official policies,
27 either expressed or implied, of the FreeBSD Project.
28 */
29 
30 /*
31  * Please do not edit this file.
32  * It was generated using rpcgen.
33  */
34 
35 #ifndef _NFS_H_RPCGEN
36 #define _NFS_H_RPCGEN
37 #include <nfsc/libnfs-zdr.h>
38 
39 #include <nfsc/libnfs-zdr.h>
40 
41 
42 #ifdef __cplusplus
43 extern "C" {
44 #endif
45 
46 #define NFS3_FHSIZE 64
47 #define NFS3_WRITEVERFSIZE 8
48 #define NFS3_CREATEVERFSIZE 8
49 #define NFS3_COOKIEVERFSIZE 8
50 
51 
52 
53 typedef char cookieverf3[NFS3_COOKIEVERFSIZE];
54 
55 typedef uint64_t cookie3;
56 
57 struct nfs_fh3 {
58 	struct {
59 		u_int data_len;
60 		char *data_val;
61 	} data;
62 };
63 typedef struct nfs_fh3 nfs_fh3;
64 
65 typedef char *filename3;
66 
67 struct diropargs3 {
68 	nfs_fh3 dir;
69 	filename3 name;
70 };
71 typedef struct diropargs3 diropargs3;
72 
73 enum ftype3 {
74 	NF3REG = 1,
75 	NF3DIR = 2,
76 	NF3BLK = 3,
77 	NF3CHR = 4,
78 	NF3LNK = 5,
79 	NF3SOCK = 6,
80 	NF3FIFO = 7,
81 };
82 typedef enum ftype3 ftype3;
83 
84 typedef u_int mode3;
85 
86 typedef u_int uid3;
87 
88 typedef u_int gid3;
89 
90 typedef uint64_t size3;
91 
92 typedef uint64_t fileid3;
93 
94 struct specdata3 {
95 	u_int specdata1;
96 	u_int specdata2;
97 };
98 typedef struct specdata3 specdata3;
99 
100 struct nfstime3 {
101 	u_int seconds;
102 	u_int nseconds;
103 };
104 typedef struct nfstime3 nfstime3;
105 
106 struct fattr3 {
107 	ftype3 type;
108 	mode3 mode;
109 	u_int nlink;
110 	uid3 uid;
111 	gid3 gid;
112 	size3 size;
113 	size3 used;
114 	specdata3 rdev;
115 	uint64_t fsid;
116 	fileid3 fileid;
117 	nfstime3 atime;
118 	nfstime3 mtime;
119 	nfstime3 ctime;
120 };
121 typedef struct fattr3 fattr3;
122 
123 struct post_op_attr {
124 	uint32_t attributes_follow;
125 	union {
126 		fattr3 attributes;
127 	} post_op_attr_u;
128 };
129 typedef struct post_op_attr post_op_attr;
130 
131 enum nfsstat3 {
132 	NFS3_OK = 0,
133 	NFS3ERR_PERM = 1,
134 	NFS3ERR_NOENT = 2,
135 	NFS3ERR_IO = 5,
136 	NFS3ERR_NXIO = 6,
137 	NFS3ERR_ACCES = 13,
138 	NFS3ERR_EXIST = 17,
139 	NFS3ERR_XDEV = 18,
140 	NFS3ERR_NODEV = 19,
141 	NFS3ERR_NOTDIR = 20,
142 	NFS3ERR_ISDIR = 21,
143 	NFS3ERR_INVAL = 22,
144 	NFS3ERR_FBIG = 27,
145 	NFS3ERR_NOSPC = 28,
146 	NFS3ERR_ROFS = 30,
147 	NFS3ERR_MLINK = 31,
148 	NFS3ERR_NAMETOOLONG = 63,
149 	NFS3ERR_NOTEMPTY = 66,
150 	NFS3ERR_DQUOT = 69,
151 	NFS3ERR_STALE = 70,
152 	NFS3ERR_REMOTE = 71,
153 	NFS3ERR_BADHANDLE = 10001,
154 	NFS3ERR_NOT_SYNC = 10002,
155 	NFS3ERR_BAD_COOKIE = 10003,
156 	NFS3ERR_NOTSUPP = 10004,
157 	NFS3ERR_TOOSMALL = 10005,
158 	NFS3ERR_SERVERFAULT = 10006,
159 	NFS3ERR_BADTYPE = 10007,
160 	NFS3ERR_JUKEBOX = 10008,
161 };
162 typedef enum nfsstat3 nfsstat3;
163 
164 enum stable_how {
165 	UNSTABLE = 0,
166 	DATA_SYNC = 1,
167 	FILE_SYNC = 2,
168 };
169 typedef enum stable_how stable_how;
170 
171 typedef uint64_t offset3;
172 
173 typedef u_int count3;
174 
175 struct wcc_attr {
176 	size3 size;
177 	nfstime3 mtime;
178 	nfstime3 ctime;
179 };
180 typedef struct wcc_attr wcc_attr;
181 
182 struct pre_op_attr {
183 	uint32_t attributes_follow;
184 	union {
185 		wcc_attr attributes;
186 	} pre_op_attr_u;
187 };
188 typedef struct pre_op_attr pre_op_attr;
189 
190 struct wcc_data {
191 	pre_op_attr before;
192 	post_op_attr after;
193 };
194 typedef struct wcc_data wcc_data;
195 
196 struct WRITE3args {
197 	nfs_fh3 file;
198 	offset3 offset;
199 	count3 count;
200 	stable_how stable;
201 	struct {
202 		u_int data_len;
203 		char *data_val;
204 	} data;
205 };
206 typedef struct WRITE3args WRITE3args;
207 
208 typedef char writeverf3[NFS3_WRITEVERFSIZE];
209 
210 struct WRITE3resok {
211 	wcc_data file_wcc;
212 	count3 count;
213 	stable_how committed;
214 	writeverf3 verf;
215 };
216 typedef struct WRITE3resok WRITE3resok;
217 
218 struct WRITE3resfail {
219 	wcc_data file_wcc;
220 };
221 typedef struct WRITE3resfail WRITE3resfail;
222 
223 struct WRITE3res {
224 	nfsstat3 status;
225 	union {
226 		WRITE3resok resok;
227 		WRITE3resfail resfail;
228 	} WRITE3res_u;
229 };
230 typedef struct WRITE3res WRITE3res;
231 
232 struct LOOKUP3args {
233 	diropargs3 what;
234 };
235 typedef struct LOOKUP3args LOOKUP3args;
236 
237 struct LOOKUP3resok {
238 	nfs_fh3 object;
239 	post_op_attr obj_attributes;
240 	post_op_attr dir_attributes;
241 };
242 typedef struct LOOKUP3resok LOOKUP3resok;
243 
244 struct LOOKUP3resfail {
245 	post_op_attr dir_attributes;
246 };
247 typedef struct LOOKUP3resfail LOOKUP3resfail;
248 
249 struct LOOKUP3res {
250 	nfsstat3 status;
251 	union {
252 		LOOKUP3resok resok;
253 		LOOKUP3resfail resfail;
254 	} LOOKUP3res_u;
255 };
256 typedef struct LOOKUP3res LOOKUP3res;
257 
258 struct COMMIT3args {
259 	nfs_fh3 file;
260 	offset3 offset;
261 	count3 count;
262 };
263 typedef struct COMMIT3args COMMIT3args;
264 
265 struct COMMIT3resok {
266 	wcc_data file_wcc;
267 	writeverf3 verf;
268 };
269 typedef struct COMMIT3resok COMMIT3resok;
270 
271 struct COMMIT3resfail {
272 	wcc_data file_wcc;
273 };
274 typedef struct COMMIT3resfail COMMIT3resfail;
275 
276 struct COMMIT3res {
277 	nfsstat3 status;
278 	union {
279 		COMMIT3resok resok;
280 		COMMIT3resfail resfail;
281 	} COMMIT3res_u;
282 };
283 typedef struct COMMIT3res COMMIT3res;
284 #define ACCESS3_READ 0x0001
285 #define ACCESS3_LOOKUP 0x0002
286 #define ACCESS3_MODIFY 0x0004
287 #define ACCESS3_EXTEND 0x0008
288 #define ACCESS3_DELETE 0x0010
289 #define ACCESS3_EXECUTE 0x0020
290 
291 struct ACCESS3args {
292 	nfs_fh3 object;
293 	u_int access;
294 };
295 typedef struct ACCESS3args ACCESS3args;
296 
297 struct ACCESS3resok {
298 	post_op_attr obj_attributes;
299 	u_int access;
300 };
301 typedef struct ACCESS3resok ACCESS3resok;
302 
303 struct ACCESS3resfail {
304 	post_op_attr obj_attributes;
305 };
306 typedef struct ACCESS3resfail ACCESS3resfail;
307 
308 struct ACCESS3res {
309 	nfsstat3 status;
310 	union {
311 		ACCESS3resok resok;
312 		ACCESS3resfail resfail;
313 	} ACCESS3res_u;
314 };
315 typedef struct ACCESS3res ACCESS3res;
316 
317 struct GETATTR3args {
318 	nfs_fh3 object;
319 };
320 typedef struct GETATTR3args GETATTR3args;
321 
322 struct GETATTR3resok {
323 	fattr3 obj_attributes;
324 };
325 typedef struct GETATTR3resok GETATTR3resok;
326 
327 struct GETATTR3res {
328 	nfsstat3 status;
329 	union {
330 		GETATTR3resok resok;
331 	} GETATTR3res_u;
332 };
333 typedef struct GETATTR3res GETATTR3res;
334 
335 enum time_how {
336 	DONT_CHANGE = 0,
337 	SET_TO_SERVER_TIME = 1,
338 	SET_TO_CLIENT_TIME = 2,
339 };
340 typedef enum time_how time_how;
341 
342 struct set_mode3 {
343 	uint32_t set_it;
344 	union {
345 		mode3 mode;
346 	} set_mode3_u;
347 };
348 typedef struct set_mode3 set_mode3;
349 
350 struct set_uid3 {
351 	uint32_t set_it;
352 	union {
353 		uid3 uid;
354 	} set_uid3_u;
355 };
356 typedef struct set_uid3 set_uid3;
357 
358 struct set_gid3 {
359 	uint32_t set_it;
360 	union {
361 		gid3 gid;
362 	} set_gid3_u;
363 };
364 typedef struct set_gid3 set_gid3;
365 
366 struct set_size3 {
367 	uint32_t set_it;
368 	union {
369 		size3 size;
370 	} set_size3_u;
371 };
372 typedef struct set_size3 set_size3;
373 
374 struct set_atime {
375 	time_how set_it;
376 	union {
377 		nfstime3 atime;
378 	} set_atime_u;
379 };
380 typedef struct set_atime set_atime;
381 
382 struct set_mtime {
383 	time_how set_it;
384 	union {
385 		nfstime3 mtime;
386 	} set_mtime_u;
387 };
388 typedef struct set_mtime set_mtime;
389 
390 struct sattr3 {
391 	set_mode3 mode;
392 	set_uid3 uid;
393 	set_gid3 gid;
394 	set_size3 size;
395 	set_atime atime;
396 	set_mtime mtime;
397 };
398 typedef struct sattr3 sattr3;
399 
400 enum createmode3 {
401 	UNCHECKED = 0,
402 	GUARDED = 1,
403 	EXCLUSIVE = 2,
404 };
405 typedef enum createmode3 createmode3;
406 
407 typedef char createverf3[NFS3_CREATEVERFSIZE];
408 
409 struct createhow3 {
410 	createmode3 mode;
411 	union {
412 		sattr3 obj_attributes;
413 		sattr3 g_obj_attributes;
414 		createverf3 verf;
415 	} createhow3_u;
416 };
417 typedef struct createhow3 createhow3;
418 
419 struct CREATE3args {
420 	diropargs3 where;
421 	createhow3 how;
422 };
423 typedef struct CREATE3args CREATE3args;
424 
425 struct post_op_fh3 {
426 	uint32_t handle_follows;
427 	union {
428 		nfs_fh3 handle;
429 	} post_op_fh3_u;
430 };
431 typedef struct post_op_fh3 post_op_fh3;
432 
433 struct CREATE3resok {
434 	post_op_fh3 obj;
435 	post_op_attr obj_attributes;
436 	wcc_data dir_wcc;
437 };
438 typedef struct CREATE3resok CREATE3resok;
439 
440 struct CREATE3resfail {
441 	wcc_data dir_wcc;
442 };
443 typedef struct CREATE3resfail CREATE3resfail;
444 
445 struct CREATE3res {
446 	nfsstat3 status;
447 	union {
448 		CREATE3resok resok;
449 		CREATE3resfail resfail;
450 	} CREATE3res_u;
451 };
452 typedef struct CREATE3res CREATE3res;
453 
454 struct REMOVE3args {
455 	diropargs3 object;
456 };
457 typedef struct REMOVE3args REMOVE3args;
458 
459 struct REMOVE3resok {
460 	wcc_data dir_wcc;
461 };
462 typedef struct REMOVE3resok REMOVE3resok;
463 
464 struct REMOVE3resfail {
465 	wcc_data dir_wcc;
466 };
467 typedef struct REMOVE3resfail REMOVE3resfail;
468 
469 struct REMOVE3res {
470 	nfsstat3 status;
471 	union {
472 		REMOVE3resok resok;
473 		REMOVE3resfail resfail;
474 	} REMOVE3res_u;
475 };
476 typedef struct REMOVE3res REMOVE3res;
477 
478 struct READ3args {
479 	nfs_fh3 file;
480 	offset3 offset;
481 	count3 count;
482 };
483 typedef struct READ3args READ3args;
484 
485 struct READ3resok {
486 	post_op_attr file_attributes;
487 	count3 count;
488 	uint32_t eof;
489 	struct {
490 		u_int data_len;
491 		char *data_val;
492 	} data;
493 };
494 typedef struct READ3resok READ3resok;
495 
496 struct READ3resfail {
497 	post_op_attr file_attributes;
498 };
499 typedef struct READ3resfail READ3resfail;
500 
501 struct READ3res {
502 	nfsstat3 status;
503 	union {
504 		READ3resok resok;
505 		READ3resfail resfail;
506 	} READ3res_u;
507 };
508 typedef struct READ3res READ3res;
509 #define FSF3_LINK 0x0001
510 #define FSF3_SYMLINK 0x0002
511 #define FSF3_HOMOGENEOUS 0x0008
512 #define FSF3_CANSETTIME 0x0010
513 
514 struct FSINFO3args {
515 	nfs_fh3 fsroot;
516 };
517 typedef struct FSINFO3args FSINFO3args;
518 
519 struct FSINFO3resok {
520 	post_op_attr obj_attributes;
521 	u_int rtmax;
522 	u_int rtpref;
523 	u_int rtmult;
524 	u_int wtmax;
525 	u_int wtpref;
526 	u_int wtmult;
527 	u_int dtpref;
528 	size3 maxfilesize;
529 	nfstime3 time_delta;
530 	u_int properties;
531 };
532 typedef struct FSINFO3resok FSINFO3resok;
533 
534 struct FSINFO3resfail {
535 	post_op_attr obj_attributes;
536 };
537 typedef struct FSINFO3resfail FSINFO3resfail;
538 
539 struct FSINFO3res {
540 	nfsstat3 status;
541 	union {
542 		FSINFO3resok resok;
543 		FSINFO3resfail resfail;
544 	} FSINFO3res_u;
545 };
546 typedef struct FSINFO3res FSINFO3res;
547 
548 struct FSSTAT3args {
549 	nfs_fh3 fsroot;
550 };
551 typedef struct FSSTAT3args FSSTAT3args;
552 
553 struct FSSTAT3resok {
554 	post_op_attr obj_attributes;
555 	size3 tbytes;
556 	size3 fbytes;
557 	size3 abytes;
558 	size3 tfiles;
559 	size3 ffiles;
560 	size3 afiles;
561 	u_int invarsec;
562 };
563 typedef struct FSSTAT3resok FSSTAT3resok;
564 
565 struct FSSTAT3resfail {
566 	post_op_attr obj_attributes;
567 };
568 typedef struct FSSTAT3resfail FSSTAT3resfail;
569 
570 struct FSSTAT3res {
571 	nfsstat3 status;
572 	union {
573 		FSSTAT3resok resok;
574 		FSSTAT3resfail resfail;
575 	} FSSTAT3res_u;
576 };
577 typedef struct FSSTAT3res FSSTAT3res;
578 
579 struct PATHCONF3args {
580 	nfs_fh3 object;
581 };
582 typedef struct PATHCONF3args PATHCONF3args;
583 
584 struct PATHCONF3resok {
585 	post_op_attr obj_attributes;
586 	u_int linkmax;
587 	u_int name_max;
588 	uint32_t no_trunc;
589 	uint32_t chown_restricted;
590 	uint32_t case_insensitive;
591 	uint32_t case_preserving;
592 };
593 typedef struct PATHCONF3resok PATHCONF3resok;
594 
595 struct PATHCONF3resfail {
596 	post_op_attr obj_attributes;
597 };
598 typedef struct PATHCONF3resfail PATHCONF3resfail;
599 
600 struct PATHCONF3res {
601 	nfsstat3 status;
602 	union {
603 		PATHCONF3resok resok;
604 		PATHCONF3resfail resfail;
605 	} PATHCONF3res_u;
606 };
607 typedef struct PATHCONF3res PATHCONF3res;
608 
609 typedef char *nfspath3;
610 
611 struct symlinkdata3 {
612 	sattr3 symlink_attributes;
613 	nfspath3 symlink_data;
614 };
615 typedef struct symlinkdata3 symlinkdata3;
616 
617 struct SYMLINK3args {
618 	diropargs3 where;
619 	symlinkdata3 symlink;
620 };
621 typedef struct SYMLINK3args SYMLINK3args;
622 
623 struct SYMLINK3resok {
624 	post_op_fh3 obj;
625 	post_op_attr obj_attributes;
626 	wcc_data dir_wcc;
627 };
628 typedef struct SYMLINK3resok SYMLINK3resok;
629 
630 struct SYMLINK3resfail {
631 	wcc_data dir_wcc;
632 };
633 typedef struct SYMLINK3resfail SYMLINK3resfail;
634 
635 struct SYMLINK3res {
636 	nfsstat3 status;
637 	union {
638 		SYMLINK3resok resok;
639 		SYMLINK3resfail resfail;
640 	} SYMLINK3res_u;
641 };
642 typedef struct SYMLINK3res SYMLINK3res;
643 
644 struct READLINK3args {
645 	nfs_fh3 symlink;
646 };
647 typedef struct READLINK3args READLINK3args;
648 
649 struct READLINK3resok {
650 	post_op_attr symlink_attributes;
651 	nfspath3 data;
652 };
653 typedef struct READLINK3resok READLINK3resok;
654 
655 struct READLINK3resfail {
656 	post_op_attr symlink_attributes;
657 };
658 typedef struct READLINK3resfail READLINK3resfail;
659 
660 struct READLINK3res {
661 	nfsstat3 status;
662 	union {
663 		READLINK3resok resok;
664 		READLINK3resfail resfail;
665 	} READLINK3res_u;
666 };
667 typedef struct READLINK3res READLINK3res;
668 
669 struct devicedata3 {
670 	sattr3 dev_attributes;
671 	specdata3 spec;
672 };
673 typedef struct devicedata3 devicedata3;
674 
675 struct mknoddata3 {
676 	ftype3 type;
677 	union {
678 		devicedata3 chr_device;
679 		devicedata3 blk_device;
680 		sattr3 sock_attributes;
681 		sattr3 pipe_attributes;
682 	} mknoddata3_u;
683 };
684 typedef struct mknoddata3 mknoddata3;
685 
686 struct MKNOD3args {
687 	diropargs3 where;
688 	mknoddata3 what;
689 };
690 typedef struct MKNOD3args MKNOD3args;
691 
692 struct MKNOD3resok {
693 	post_op_fh3 obj;
694 	post_op_attr obj_attributes;
695 	wcc_data dir_wcc;
696 };
697 typedef struct MKNOD3resok MKNOD3resok;
698 
699 struct MKNOD3resfail {
700 	wcc_data dir_wcc;
701 };
702 typedef struct MKNOD3resfail MKNOD3resfail;
703 
704 struct MKNOD3res {
705 	nfsstat3 status;
706 	union {
707 		MKNOD3resok resok;
708 		MKNOD3resfail resfail;
709 	} MKNOD3res_u;
710 };
711 typedef struct MKNOD3res MKNOD3res;
712 
713 struct MKDIR3args {
714 	diropargs3 where;
715 	sattr3 attributes;
716 };
717 typedef struct MKDIR3args MKDIR3args;
718 
719 struct MKDIR3resok {
720 	post_op_fh3 obj;
721 	post_op_attr obj_attributes;
722 	wcc_data dir_wcc;
723 };
724 typedef struct MKDIR3resok MKDIR3resok;
725 
726 struct MKDIR3resfail {
727 	wcc_data dir_wcc;
728 };
729 typedef struct MKDIR3resfail MKDIR3resfail;
730 
731 struct MKDIR3res {
732 	nfsstat3 status;
733 	union {
734 		MKDIR3resok resok;
735 		MKDIR3resfail resfail;
736 	} MKDIR3res_u;
737 };
738 typedef struct MKDIR3res MKDIR3res;
739 
740 struct RMDIR3args {
741 	diropargs3 object;
742 };
743 typedef struct RMDIR3args RMDIR3args;
744 
745 struct RMDIR3resok {
746 	wcc_data dir_wcc;
747 };
748 typedef struct RMDIR3resok RMDIR3resok;
749 
750 struct RMDIR3resfail {
751 	wcc_data dir_wcc;
752 };
753 typedef struct RMDIR3resfail RMDIR3resfail;
754 
755 struct RMDIR3res {
756 	nfsstat3 status;
757 	union {
758 		RMDIR3resok resok;
759 		RMDIR3resfail resfail;
760 	} RMDIR3res_u;
761 };
762 typedef struct RMDIR3res RMDIR3res;
763 
764 struct RENAME3args {
765 	diropargs3 from;
766 	diropargs3 to;
767 };
768 typedef struct RENAME3args RENAME3args;
769 
770 struct RENAME3resok {
771 	wcc_data fromdir_wcc;
772 	wcc_data todir_wcc;
773 };
774 typedef struct RENAME3resok RENAME3resok;
775 
776 struct RENAME3resfail {
777 	wcc_data fromdir_wcc;
778 	wcc_data todir_wcc;
779 };
780 typedef struct RENAME3resfail RENAME3resfail;
781 
782 struct RENAME3res {
783 	nfsstat3 status;
784 	union {
785 		RENAME3resok resok;
786 		RENAME3resfail resfail;
787 	} RENAME3res_u;
788 };
789 typedef struct RENAME3res RENAME3res;
790 
791 struct READDIRPLUS3args {
792 	nfs_fh3 dir;
793 	cookie3 cookie;
794 	cookieverf3 cookieverf;
795 	count3 dircount;
796 	count3 maxcount;
797 };
798 typedef struct READDIRPLUS3args READDIRPLUS3args;
799 
800 struct entryplus3 {
801 	fileid3 fileid;
802 	filename3 name;
803 	cookie3 cookie;
804 	post_op_attr name_attributes;
805 	post_op_fh3 name_handle;
806 	struct entryplus3 *nextentry;
807 };
808 typedef struct entryplus3 entryplus3;
809 
810 struct dirlistplus3 {
811 	entryplus3 *entries;
812 	uint32_t eof;
813 };
814 typedef struct dirlistplus3 dirlistplus3;
815 
816 struct READDIRPLUS3resok {
817 	post_op_attr dir_attributes;
818 	cookieverf3 cookieverf;
819 	dirlistplus3 reply;
820 };
821 typedef struct READDIRPLUS3resok READDIRPLUS3resok;
822 
823 struct READDIRPLUS3resfail {
824 	post_op_attr dir_attributes;
825 };
826 typedef struct READDIRPLUS3resfail READDIRPLUS3resfail;
827 
828 struct READDIRPLUS3res {
829 	nfsstat3 status;
830 	union {
831 		READDIRPLUS3resok resok;
832 		READDIRPLUS3resfail resfail;
833 	} READDIRPLUS3res_u;
834 };
835 typedef struct READDIRPLUS3res READDIRPLUS3res;
836 
837 struct READDIR3args {
838 	nfs_fh3 dir;
839 	cookie3 cookie;
840 	cookieverf3 cookieverf;
841 	count3 count;
842 };
843 typedef struct READDIR3args READDIR3args;
844 
845 struct entry3 {
846 	fileid3 fileid;
847 	filename3 name;
848 	cookie3 cookie;
849 	struct entry3 *nextentry;
850 };
851 typedef struct entry3 entry3;
852 
853 struct dirlist3 {
854 	entry3 *entries;
855 	uint32_t eof;
856 };
857 typedef struct dirlist3 dirlist3;
858 
859 struct READDIR3resok {
860 	post_op_attr dir_attributes;
861 	cookieverf3 cookieverf;
862 	dirlist3 reply;
863 };
864 typedef struct READDIR3resok READDIR3resok;
865 
866 struct READDIR3resfail {
867 	post_op_attr dir_attributes;
868 };
869 typedef struct READDIR3resfail READDIR3resfail;
870 
871 struct READDIR3res {
872 	nfsstat3 status;
873 	union {
874 		READDIR3resok resok;
875 		READDIR3resfail resfail;
876 	} READDIR3res_u;
877 };
878 typedef struct READDIR3res READDIR3res;
879 
880 struct LINK3args {
881 	nfs_fh3 file;
882 	diropargs3 link;
883 };
884 typedef struct LINK3args LINK3args;
885 
886 struct LINK3resok {
887 	post_op_attr file_attributes;
888 	wcc_data linkdir_wcc;
889 };
890 typedef struct LINK3resok LINK3resok;
891 
892 struct LINK3resfail {
893 	post_op_attr file_attributes;
894 	wcc_data linkdir_wcc;
895 };
896 typedef struct LINK3resfail LINK3resfail;
897 
898 struct LINK3res {
899 	nfsstat3 status;
900 	union {
901 		LINK3resok resok;
902 		LINK3resfail resfail;
903 	} LINK3res_u;
904 };
905 typedef struct LINK3res LINK3res;
906 
907 struct sattrguard3 {
908 	uint32_t check;
909 	union {
910 		nfstime3 obj_ctime;
911 	} sattrguard3_u;
912 };
913 typedef struct sattrguard3 sattrguard3;
914 
915 struct SETATTR3args {
916 	nfs_fh3 object;
917 	sattr3 new_attributes;
918 	sattrguard3 guard;
919 };
920 typedef struct SETATTR3args SETATTR3args;
921 
922 struct SETATTR3resok {
923 	wcc_data obj_wcc;
924 };
925 typedef struct SETATTR3resok SETATTR3resok;
926 
927 struct SETATTR3resfail {
928 	wcc_data obj_wcc;
929 };
930 typedef struct SETATTR3resfail SETATTR3resfail;
931 
932 struct SETATTR3res {
933 	nfsstat3 status;
934 	union {
935 		SETATTR3resok resok;
936 		SETATTR3resfail resfail;
937 	} SETATTR3res_u;
938 };
939 typedef struct SETATTR3res SETATTR3res;
940 #define FHSIZE2 32
941 
942 typedef char fhandle2[FHSIZE2];
943 
944 enum ftype2 {
945 	NF2NON = 0,
946 	NF2REG = 1,
947 	NF2DIR = 2,
948 	NF2BLK = 3,
949 	NF2CHR = 4,
950 	NF2LNK = 5,
951 };
952 typedef enum ftype2 ftype2;
953 
954 struct fattr2 {
955 	ftype2 type;
956 	u_int mode;
957 	u_int nlink;
958 	u_int uid;
959 	u_int gid;
960 	u_int size;
961 	u_int blocksize;
962 	u_int rdev;
963 	u_int blocks;
964 	u_int fsid;
965 	u_int fileid;
966 	nfstime3 atime;
967 	nfstime3 mtime;
968 	nfstime3 ctime;
969 };
970 typedef struct fattr2 fattr2;
971 
972 struct sattr2 {
973 	u_int mode;
974 	u_int uid;
975 	u_int gid;
976 	u_int size;
977 	nfstime3 atime;
978 	nfstime3 mtime;
979 };
980 typedef struct sattr2 sattr2;
981 #define MAXNAMLEN2 255
982 
983 typedef char *filename2;
984 #define MAXPATHLEN2 1024
985 
986 typedef char *path2;
987 #define NFSMAXDATA2 8192
988 
989 typedef struct {
990 	u_int nfsdata2_len;
991 	char *nfsdata2_val;
992 } nfsdata2;
993 #define NFSCOOKIESIZE2 4
994 
995 typedef char nfscookie2[NFSCOOKIESIZE2];
996 
997 struct entry2 {
998 	u_int fileid;
999 	filename2 name;
1000 	nfscookie2 cookie;
1001 	struct entry2 *nextentry;
1002 };
1003 typedef struct entry2 entry2;
1004 
1005 struct diropargs2 {
1006 	fhandle2 dir;
1007 	filename2 name;
1008 };
1009 typedef struct diropargs2 diropargs2;
1010 
1011 struct GETATTR2args {
1012 	fhandle2 fhandle;
1013 };
1014 typedef struct GETATTR2args GETATTR2args;
1015 
1016 struct GETATTR2resok {
1017 	fattr2 attributes;
1018 };
1019 typedef struct GETATTR2resok GETATTR2resok;
1020 
1021 struct GETATTR2res {
1022 	nfsstat3 status;
1023 	union {
1024 		GETATTR2resok resok;
1025 	} GETATTR2res_u;
1026 };
1027 typedef struct GETATTR2res GETATTR2res;
1028 
1029 struct SETATTR2args {
1030 	fhandle2 fhandle;
1031 	sattr2 attributes;
1032 };
1033 typedef struct SETATTR2args SETATTR2args;
1034 
1035 struct SETATTR2resok {
1036 	fattr2 attributes;
1037 };
1038 typedef struct SETATTR2resok SETATTR2resok;
1039 
1040 struct SETATTR2res {
1041 	nfsstat3 status;
1042 	union {
1043 		SETATTR2resok resok;
1044 	} SETATTR2res_u;
1045 };
1046 typedef struct SETATTR2res SETATTR2res;
1047 
1048 struct LOOKUP2args {
1049 	diropargs2 what;
1050 };
1051 typedef struct LOOKUP2args LOOKUP2args;
1052 
1053 struct LOOKUP2resok {
1054 	fhandle2 file;
1055 	fattr2 attributes;
1056 };
1057 typedef struct LOOKUP2resok LOOKUP2resok;
1058 
1059 struct LOOKUP2res {
1060 	nfsstat3 status;
1061 	union {
1062 		LOOKUP2resok resok;
1063 	} LOOKUP2res_u;
1064 };
1065 typedef struct LOOKUP2res LOOKUP2res;
1066 
1067 struct READLINK2args {
1068 	fhandle2 file;
1069 };
1070 typedef struct READLINK2args READLINK2args;
1071 
1072 struct READLINK2resok {
1073 	path2 data;
1074 };
1075 typedef struct READLINK2resok READLINK2resok;
1076 
1077 struct READLINK2res {
1078 	nfsstat3 status;
1079 	union {
1080 		READLINK2resok resok;
1081 	} READLINK2res_u;
1082 };
1083 typedef struct READLINK2res READLINK2res;
1084 
1085 struct READ2args {
1086 	fhandle2 file;
1087 	u_int offset;
1088 	u_int count;
1089 	u_int totalcount;
1090 };
1091 typedef struct READ2args READ2args;
1092 
1093 struct READ2resok {
1094 	fattr2 attributes;
1095 	nfsdata2 data;
1096 };
1097 typedef struct READ2resok READ2resok;
1098 
1099 struct READ2res {
1100 	nfsstat3 status;
1101 	union {
1102 		READ2resok resok;
1103 	} READ2res_u;
1104 };
1105 typedef struct READ2res READ2res;
1106 
1107 struct WRITE2args {
1108 	fhandle2 file;
1109 	u_int beginoffset;
1110 	u_int offset;
1111 	u_int totalcount;
1112 	nfsdata2 data;
1113 };
1114 typedef struct WRITE2args WRITE2args;
1115 
1116 struct WRITE2resok {
1117 	fattr2 attributes;
1118 };
1119 typedef struct WRITE2resok WRITE2resok;
1120 
1121 struct WRITE2res {
1122 	nfsstat3 status;
1123 	union {
1124 		WRITE2resok resok;
1125 	} WRITE2res_u;
1126 };
1127 typedef struct WRITE2res WRITE2res;
1128 
1129 struct CREATE2args {
1130 	diropargs2 where;
1131 	sattr2 attributes;
1132 };
1133 typedef struct CREATE2args CREATE2args;
1134 
1135 struct CREATE2resok {
1136 	fhandle2 file;
1137 	fattr2 attributes;
1138 };
1139 typedef struct CREATE2resok CREATE2resok;
1140 
1141 struct CREATE2res {
1142 	nfsstat3 status;
1143 	union {
1144 		CREATE2resok resok;
1145 	} CREATE2res_u;
1146 };
1147 typedef struct CREATE2res CREATE2res;
1148 
1149 struct REMOVE2args {
1150 	diropargs2 what;
1151 };
1152 typedef struct REMOVE2args REMOVE2args;
1153 
1154 struct REMOVE2res {
1155 	nfsstat3 status;
1156 };
1157 typedef struct REMOVE2res REMOVE2res;
1158 
1159 struct RENAME2args {
1160 	diropargs2 from;
1161 	diropargs2 to;
1162 };
1163 typedef struct RENAME2args RENAME2args;
1164 
1165 struct RENAME2res {
1166 	nfsstat3 status;
1167 };
1168 typedef struct RENAME2res RENAME2res;
1169 
1170 struct LINK2args {
1171 	fhandle2 from;
1172 	diropargs2 to;
1173 };
1174 typedef struct LINK2args LINK2args;
1175 
1176 struct LINK2res {
1177 	nfsstat3 status;
1178 };
1179 typedef struct LINK2res LINK2res;
1180 
1181 struct SYMLINK2args {
1182 	diropargs2 from;
1183 	path2 to;
1184 	sattr2 attributes;
1185 };
1186 typedef struct SYMLINK2args SYMLINK2args;
1187 
1188 struct SYMLINK2res {
1189 	nfsstat3 status;
1190 };
1191 typedef struct SYMLINK2res SYMLINK2res;
1192 
1193 struct MKDIR2args {
1194 	diropargs2 where;
1195 	sattr2 attributes;
1196 };
1197 typedef struct MKDIR2args MKDIR2args;
1198 
1199 struct MKDIR2resok {
1200 	fhandle2 file;
1201 	fattr2 attributes;
1202 };
1203 typedef struct MKDIR2resok MKDIR2resok;
1204 
1205 struct MKDIR2res {
1206 	nfsstat3 status;
1207 	union {
1208 		MKDIR2resok resok;
1209 	} MKDIR2res_u;
1210 };
1211 typedef struct MKDIR2res MKDIR2res;
1212 
1213 struct RMDIR2args {
1214 	diropargs2 what;
1215 };
1216 typedef struct RMDIR2args RMDIR2args;
1217 
1218 struct RMDIR2res {
1219 	nfsstat3 status;
1220 };
1221 typedef struct RMDIR2res RMDIR2res;
1222 
1223 struct READDIR2args {
1224 	fhandle2 dir;
1225 	nfscookie2 cookie;
1226 	u_int count;
1227 };
1228 typedef struct READDIR2args READDIR2args;
1229 
1230 struct READDIR2resok {
1231 	entry2 *entries;
1232 	uint32_t eof;
1233 };
1234 typedef struct READDIR2resok READDIR2resok;
1235 
1236 struct READDIR2res {
1237 	nfsstat3 status;
1238 	union {
1239 		READDIR2resok resok;
1240 	} READDIR2res_u;
1241 };
1242 typedef struct READDIR2res READDIR2res;
1243 
1244 struct STATFS2args {
1245 	fhandle2 dir;
1246 };
1247 typedef struct STATFS2args STATFS2args;
1248 
1249 struct STATFS2resok {
1250 	u_int tsize;
1251 	u_int bsize;
1252 	u_int blocks;
1253 	u_int bfree;
1254 	u_int bavail;
1255 };
1256 typedef struct STATFS2resok STATFS2resok;
1257 
1258 struct STATFS2res {
1259 	nfsstat3 status;
1260 	union {
1261 		STATFS2resok resok;
1262 	} STATFS2res_u;
1263 };
1264 typedef struct STATFS2res STATFS2res;
1265 
1266 enum nfsacl_type {
1267 	NFSACL_TYPE_USER_OBJ = 0x0001,
1268 	NFSACL_TYPE_USER = 0x0002,
1269 	NFSACL_TYPE_GROUP_OBJ = 0x0004,
1270 	NFSACL_TYPE_GROUP = 0x0008,
1271 	NFSACL_TYPE_CLASS_OBJ = 0x0010,
1272 	NFSACL_TYPE_CLASS = 0x0020,
1273 	NFSACL_TYPE_DEFAULT = 0x1000,
1274 	NFSACL_TYPE_DEFAULT_USER_OBJ = 0x1001,
1275 	NFSACL_TYPE_DEFAULT_USER = 0x1002,
1276 	NFSACL_TYPE_DEFAULT_GROUP_OBJ = 0x1004,
1277 	NFSACL_TYPE_DEFAULT_GROUP = 0x1008,
1278 	NFSACL_TYPE_DEFAULT_CLASS_OBJ = 0x1010,
1279 	NFSACL_TYPE_DEFAULT_OTHER_OBJ = 0x1020,
1280 };
1281 typedef enum nfsacl_type nfsacl_type;
1282 #define NFSACL_PERM_READ 0x04
1283 #define NFSACL_PERM_WRITE 0x02
1284 #define NFSACL_PERM_EXEC 0x01
1285 
1286 struct nfsacl_ace {
1287 	enum nfsacl_type type;
1288 	u_int id;
1289 	u_int perm;
1290 };
1291 typedef struct nfsacl_ace nfsacl_ace;
1292 #define NFSACL_MASK_ACL_ENTRY 0x0001
1293 #define NFSACL_MASK_ACL_COUNT 0x0002
1294 #define NFSACL_MASK_ACL_DEFAULT_ENTRY 0x0004
1295 #define NFSACL_MASK_ACL_DEFAULT_COUNT 0x0008
1296 
1297 struct GETACL3args {
1298 	nfs_fh3 dir;
1299 	u_int mask;
1300 };
1301 typedef struct GETACL3args GETACL3args;
1302 
1303 struct GETACL3resok {
1304 	post_op_attr attr;
1305 	u_int mask;
1306 	u_int ace_count;
1307 	struct {
1308 		u_int ace_len;
1309 		struct nfsacl_ace *ace_val;
1310 	} ace;
1311 	u_int default_ace_count;
1312 	struct {
1313 		u_int default_ace_len;
1314 		struct nfsacl_ace *default_ace_val;
1315 	} default_ace;
1316 };
1317 typedef struct GETACL3resok GETACL3resok;
1318 
1319 struct GETACL3res {
1320 	nfsstat3 status;
1321 	union {
1322 		GETACL3resok resok;
1323 	} GETACL3res_u;
1324 };
1325 typedef struct GETACL3res GETACL3res;
1326 
1327 struct SETACL3args {
1328 	nfs_fh3 dir;
1329 	u_int mask;
1330 	u_int ace_count;
1331 	struct {
1332 		u_int ace_len;
1333 		struct nfsacl_ace *ace_val;
1334 	} ace;
1335 	u_int default_ace_count;
1336 	struct {
1337 		u_int default_ace_len;
1338 		struct nfsacl_ace *default_ace_val;
1339 	} default_ace;
1340 };
1341 typedef struct SETACL3args SETACL3args;
1342 
1343 struct SETACL3resok {
1344 	post_op_attr attr;
1345 };
1346 typedef struct SETACL3resok SETACL3resok;
1347 
1348 struct SETACL3res {
1349 	nfsstat3 status;
1350 	union {
1351 		SETACL3resok resok;
1352 	} SETACL3res_u;
1353 };
1354 typedef struct SETACL3res SETACL3res;
1355 
1356 #define NFS_PROGRAM 100003
1357 #define NFS_V2 2
1358 
1359 #if defined(__STDC__) || defined(__cplusplus)
1360 #define NFS2_NULL 0
1361 extern  void * nfs2_null_2(void *, void *);
1362 extern  void * nfs2_null_2_svc(void *, struct svc_req *);
1363 #define NFS2_GETATTR 1
1364 extern  GETATTR2res * nfs2_getattr_2(GETATTR2args *, void *);
1365 extern  GETATTR2res * nfs2_getattr_2_svc(GETATTR2args *, struct svc_req *);
1366 #define NFS2_SETATTR 2
1367 extern  SETATTR2res * nfs2_setattr_2(SETATTR2args *, void *);
1368 extern  SETATTR2res * nfs2_setattr_2_svc(SETATTR2args *, struct svc_req *);
1369 #define NFS2_LOOKUP 4
1370 extern  LOOKUP2res * nfs2_lookup_2(LOOKUP2args *, void *);
1371 extern  LOOKUP2res * nfs2_lookup_2_svc(LOOKUP2args *, struct svc_req *);
1372 #define NFS2_READLINK 5
1373 extern  READLINK2res * nfs2_readlink_2(READLINK2args *, void *);
1374 extern  READLINK2res * nfs2_readlink_2_svc(READLINK2args *, struct svc_req *);
1375 #define NFS2_READ 6
1376 extern  READ2res * nfs2_read_2(READ2args *, void *);
1377 extern  READ2res * nfs2_read_2_svc(READ2args *, struct svc_req *);
1378 #define NFS2_WRITE 8
1379 extern  WRITE2res * nfs2_write_2(WRITE2args *, void *);
1380 extern  WRITE2res * nfs2_write_2_svc(WRITE2args *, struct svc_req *);
1381 #define NFS2_CREATE 9
1382 extern  CREATE2res * nfs2_create_2(CREATE2args *, void *);
1383 extern  CREATE2res * nfs2_create_2_svc(CREATE2args *, struct svc_req *);
1384 #define NFS2_REMOVE 10
1385 extern  REMOVE2res * nfs2_remove_2(REMOVE2args *, void *);
1386 extern  REMOVE2res * nfs2_remove_2_svc(REMOVE2args *, struct svc_req *);
1387 #define NFS2_RENAME 11
1388 extern  RENAME2res * nfs2_rename_2(RENAME2args *, void *);
1389 extern  RENAME2res * nfs2_rename_2_svc(RENAME2args *, struct svc_req *);
1390 #define NFS2_LINK 12
1391 extern  LINK2res * nfs2_link_2(LINK2args *, void *);
1392 extern  LINK2res * nfs2_link_2_svc(LINK2args *, struct svc_req *);
1393 #define NFS2_SYMLINK 13
1394 extern  SYMLINK2res * nfs2_symlink_2(SYMLINK2args *, void *);
1395 extern  SYMLINK2res * nfs2_symlink_2_svc(SYMLINK2args *, struct svc_req *);
1396 #define NFS2_MKDIR 14
1397 extern  MKDIR2res * nfs2_mkdir_2(MKDIR2args *, void *);
1398 extern  MKDIR2res * nfs2_mkdir_2_svc(MKDIR2args *, struct svc_req *);
1399 #define NFS2_RMDIR 15
1400 extern  RMDIR2res * nfs2_rmdir_2(RMDIR2args *, void *);
1401 extern  RMDIR2res * nfs2_rmdir_2_svc(RMDIR2args *, struct svc_req *);
1402 #define NFS2_READDIR 16
1403 extern  READDIR2res * nfs2_readdir_2(READDIR2args *, void *);
1404 extern  READDIR2res * nfs2_readdir_2_svc(READDIR2args *, struct svc_req *);
1405 #define NFS2_STATFS 17
1406 extern  STATFS2res * nfs2_statfs_2(STATFS2args *, void *);
1407 extern  STATFS2res * nfs2_statfs_2_svc(STATFS2args *, struct svc_req *);
1408 extern int nfs_program_2_freeresult (void *, zdrproc_t, caddr_t);
1409 
1410 #else /* K&R C */
1411 #define NFS2_NULL 0
1412 extern  void * nfs2_null_2();
1413 extern  void * nfs2_null_2_svc();
1414 #define NFS2_GETATTR 1
1415 extern  GETATTR2res * nfs2_getattr_2();
1416 extern  GETATTR2res * nfs2_getattr_2_svc();
1417 #define NFS2_SETATTR 2
1418 extern  SETATTR2res * nfs2_setattr_2();
1419 extern  SETATTR2res * nfs2_setattr_2_svc();
1420 #define NFS2_LOOKUP 4
1421 extern  LOOKUP2res * nfs2_lookup_2();
1422 extern  LOOKUP2res * nfs2_lookup_2_svc();
1423 #define NFS2_READLINK 5
1424 extern  READLINK2res * nfs2_readlink_2();
1425 extern  READLINK2res * nfs2_readlink_2_svc();
1426 #define NFS2_READ 6
1427 extern  READ2res * nfs2_read_2();
1428 extern  READ2res * nfs2_read_2_svc();
1429 #define NFS2_WRITE 8
1430 extern  WRITE2res * nfs2_write_2();
1431 extern  WRITE2res * nfs2_write_2_svc();
1432 #define NFS2_CREATE 9
1433 extern  CREATE2res * nfs2_create_2();
1434 extern  CREATE2res * nfs2_create_2_svc();
1435 #define NFS2_REMOVE 10
1436 extern  REMOVE2res * nfs2_remove_2();
1437 extern  REMOVE2res * nfs2_remove_2_svc();
1438 #define NFS2_RENAME 11
1439 extern  RENAME2res * nfs2_rename_2();
1440 extern  RENAME2res * nfs2_rename_2_svc();
1441 #define NFS2_LINK 12
1442 extern  LINK2res * nfs2_link_2();
1443 extern  LINK2res * nfs2_link_2_svc();
1444 #define NFS2_SYMLINK 13
1445 extern  SYMLINK2res * nfs2_symlink_2();
1446 extern  SYMLINK2res * nfs2_symlink_2_svc();
1447 #define NFS2_MKDIR 14
1448 extern  MKDIR2res * nfs2_mkdir_2();
1449 extern  MKDIR2res * nfs2_mkdir_2_svc();
1450 #define NFS2_RMDIR 15
1451 extern  RMDIR2res * nfs2_rmdir_2();
1452 extern  RMDIR2res * nfs2_rmdir_2_svc();
1453 #define NFS2_READDIR 16
1454 extern  READDIR2res * nfs2_readdir_2();
1455 extern  READDIR2res * nfs2_readdir_2_svc();
1456 #define NFS2_STATFS 17
1457 extern  STATFS2res * nfs2_statfs_2();
1458 extern  STATFS2res * nfs2_statfs_2_svc();
1459 extern int nfs_program_2_freeresult ();
1460 #endif /* K&R C */
1461 #define NFS_V3 3
1462 
1463 #if defined(__STDC__) || defined(__cplusplus)
1464 #define NFS3_NULL 0
1465 extern  void * nfs3_null_3(void *, void *);
1466 extern  void * nfs3_null_3_svc(void *, struct svc_req *);
1467 #define NFS3_GETATTR 1
1468 extern  GETATTR3res * nfs3_getattr_3(GETATTR3args *, void *);
1469 extern  GETATTR3res * nfs3_getattr_3_svc(GETATTR3args *, struct svc_req *);
1470 #define NFS3_SETATTR 2
1471 extern  SETATTR3res * nfs3_setattr_3(SETATTR3args *, void *);
1472 extern  SETATTR3res * nfs3_setattr_3_svc(SETATTR3args *, struct svc_req *);
1473 #define NFS3_LOOKUP 3
1474 extern  LOOKUP3res * nfs3_lookup_3(LOOKUP3args *, void *);
1475 extern  LOOKUP3res * nfs3_lookup_3_svc(LOOKUP3args *, struct svc_req *);
1476 #define NFS3_ACCESS 4
1477 extern  ACCESS3res * nfs3_access_3(ACCESS3args *, void *);
1478 extern  ACCESS3res * nfs3_access_3_svc(ACCESS3args *, struct svc_req *);
1479 #define NFS3_READLINK 5
1480 extern  READLINK3res * nfs3_readlink_3(READLINK3args *, void *);
1481 extern  READLINK3res * nfs3_readlink_3_svc(READLINK3args *, struct svc_req *);
1482 #define NFS3_READ 6
1483 extern  READ3res * nfs3_read_3(READ3args *, void *);
1484 extern  READ3res * nfs3_read_3_svc(READ3args *, struct svc_req *);
1485 #define NFS3_WRITE 7
1486 extern  WRITE3res * nfs3_write_3(WRITE3args *, void *);
1487 extern  WRITE3res * nfs3_write_3_svc(WRITE3args *, struct svc_req *);
1488 #define NFS3_CREATE 8
1489 extern  CREATE3res * nfs3_create_3(CREATE3args *, void *);
1490 extern  CREATE3res * nfs3_create_3_svc(CREATE3args *, struct svc_req *);
1491 #define NFS3_MKDIR 9
1492 extern  MKDIR3res * nfs3_mkdir_3(MKDIR3args *, void *);
1493 extern  MKDIR3res * nfs3_mkdir_3_svc(MKDIR3args *, struct svc_req *);
1494 #define NFS3_SYMLINK 10
1495 extern  SYMLINK3res * nfs3_symlink_3(SYMLINK3args *, void *);
1496 extern  SYMLINK3res * nfs3_symlink_3_svc(SYMLINK3args *, struct svc_req *);
1497 #define NFS3_MKNOD 11
1498 extern  MKNOD3res * nfs3_mknod_3(MKNOD3args *, void *);
1499 extern  MKNOD3res * nfs3_mknod_3_svc(MKNOD3args *, struct svc_req *);
1500 #define NFS3_REMOVE 12
1501 extern  REMOVE3res * nfs3_remove_3(REMOVE3args *, void *);
1502 extern  REMOVE3res * nfs3_remove_3_svc(REMOVE3args *, struct svc_req *);
1503 #define NFS3_RMDIR 13
1504 extern  RMDIR3res * nfs3_rmdir_3(RMDIR3args *, void *);
1505 extern  RMDIR3res * nfs3_rmdir_3_svc(RMDIR3args *, struct svc_req *);
1506 #define NFS3_RENAME 14
1507 extern  RENAME3res * nfs3_rename_3(RENAME3args *, void *);
1508 extern  RENAME3res * nfs3_rename_3_svc(RENAME3args *, struct svc_req *);
1509 #define NFS3_LINK 15
1510 extern  LINK3res * nfs3_link_3(LINK3args *, void *);
1511 extern  LINK3res * nfs3_link_3_svc(LINK3args *, struct svc_req *);
1512 #define NFS3_READDIR 16
1513 extern  READDIR3res * nfs3_readdir_3(READDIR3args *, void *);
1514 extern  READDIR3res * nfs3_readdir_3_svc(READDIR3args *, struct svc_req *);
1515 #define NFS3_READDIRPLUS 17
1516 extern  READDIRPLUS3res * nfs3_readdirplus_3(READDIRPLUS3args *, void *);
1517 extern  READDIRPLUS3res * nfs3_readdirplus_3_svc(READDIRPLUS3args *, struct svc_req *);
1518 #define NFS3_FSSTAT 18
1519 extern  FSSTAT3res * nfs3_fsstat_3(FSSTAT3args *, void *);
1520 extern  FSSTAT3res * nfs3_fsstat_3_svc(FSSTAT3args *, struct svc_req *);
1521 #define NFS3_FSINFO 19
1522 extern  FSINFO3res * nfs3_fsinfo_3(FSINFO3args *, void *);
1523 extern  FSINFO3res * nfs3_fsinfo_3_svc(FSINFO3args *, struct svc_req *);
1524 #define NFS3_PATHCONF 20
1525 extern  PATHCONF3res * nfs3_pathconf_3(PATHCONF3args *, void *);
1526 extern  PATHCONF3res * nfs3_pathconf_3_svc(PATHCONF3args *, struct svc_req *);
1527 #define NFS3_COMMIT 21
1528 extern  COMMIT3res * nfs3_commit_3(COMMIT3args *, void *);
1529 extern  COMMIT3res * nfs3_commit_3_svc(COMMIT3args *, struct svc_req *);
1530 extern int nfs_program_3_freeresult (void *, zdrproc_t, caddr_t);
1531 
1532 #else /* K&R C */
1533 #define NFS3_NULL 0
1534 extern  void * nfs3_null_3();
1535 extern  void * nfs3_null_3_svc();
1536 #define NFS3_GETATTR 1
1537 extern  GETATTR3res * nfs3_getattr_3();
1538 extern  GETATTR3res * nfs3_getattr_3_svc();
1539 #define NFS3_SETATTR 2
1540 extern  SETATTR3res * nfs3_setattr_3();
1541 extern  SETATTR3res * nfs3_setattr_3_svc();
1542 #define NFS3_LOOKUP 3
1543 extern  LOOKUP3res * nfs3_lookup_3();
1544 extern  LOOKUP3res * nfs3_lookup_3_svc();
1545 #define NFS3_ACCESS 4
1546 extern  ACCESS3res * nfs3_access_3();
1547 extern  ACCESS3res * nfs3_access_3_svc();
1548 #define NFS3_READLINK 5
1549 extern  READLINK3res * nfs3_readlink_3();
1550 extern  READLINK3res * nfs3_readlink_3_svc();
1551 #define NFS3_READ 6
1552 extern  READ3res * nfs3_read_3();
1553 extern  READ3res * nfs3_read_3_svc();
1554 #define NFS3_WRITE 7
1555 extern  WRITE3res * nfs3_write_3();
1556 extern  WRITE3res * nfs3_write_3_svc();
1557 #define NFS3_CREATE 8
1558 extern  CREATE3res * nfs3_create_3();
1559 extern  CREATE3res * nfs3_create_3_svc();
1560 #define NFS3_MKDIR 9
1561 extern  MKDIR3res * nfs3_mkdir_3();
1562 extern  MKDIR3res * nfs3_mkdir_3_svc();
1563 #define NFS3_SYMLINK 10
1564 extern  SYMLINK3res * nfs3_symlink_3();
1565 extern  SYMLINK3res * nfs3_symlink_3_svc();
1566 #define NFS3_MKNOD 11
1567 extern  MKNOD3res * nfs3_mknod_3();
1568 extern  MKNOD3res * nfs3_mknod_3_svc();
1569 #define NFS3_REMOVE 12
1570 extern  REMOVE3res * nfs3_remove_3();
1571 extern  REMOVE3res * nfs3_remove_3_svc();
1572 #define NFS3_RMDIR 13
1573 extern  RMDIR3res * nfs3_rmdir_3();
1574 extern  RMDIR3res * nfs3_rmdir_3_svc();
1575 #define NFS3_RENAME 14
1576 extern  RENAME3res * nfs3_rename_3();
1577 extern  RENAME3res * nfs3_rename_3_svc();
1578 #define NFS3_LINK 15
1579 extern  LINK3res * nfs3_link_3();
1580 extern  LINK3res * nfs3_link_3_svc();
1581 #define NFS3_READDIR 16
1582 extern  READDIR3res * nfs3_readdir_3();
1583 extern  READDIR3res * nfs3_readdir_3_svc();
1584 #define NFS3_READDIRPLUS 17
1585 extern  READDIRPLUS3res * nfs3_readdirplus_3();
1586 extern  READDIRPLUS3res * nfs3_readdirplus_3_svc();
1587 #define NFS3_FSSTAT 18
1588 extern  FSSTAT3res * nfs3_fsstat_3();
1589 extern  FSSTAT3res * nfs3_fsstat_3_svc();
1590 #define NFS3_FSINFO 19
1591 extern  FSINFO3res * nfs3_fsinfo_3();
1592 extern  FSINFO3res * nfs3_fsinfo_3_svc();
1593 #define NFS3_PATHCONF 20
1594 extern  PATHCONF3res * nfs3_pathconf_3();
1595 extern  PATHCONF3res * nfs3_pathconf_3_svc();
1596 #define NFS3_COMMIT 21
1597 extern  COMMIT3res * nfs3_commit_3();
1598 extern  COMMIT3res * nfs3_commit_3_svc();
1599 extern int nfs_program_3_freeresult ();
1600 #endif /* K&R C */
1601 
1602 #define NFSACL_PROGRAM 100227
1603 #define NFSACL_V3 3
1604 
1605 #if defined(__STDC__) || defined(__cplusplus)
1606 #define NFSACL3_NULL 0
1607 extern  void * nfsacl3_null_3(void *, void *);
1608 extern  void * nfsacl3_null_3_svc(void *, struct svc_req *);
1609 #define NFSACL3_GETACL 1
1610 extern  GETACL3res * nfsacl3_getacl_3(GETACL3args *, void *);
1611 extern  GETACL3res * nfsacl3_getacl_3_svc(GETACL3args *, struct svc_req *);
1612 #define NFSACL3_SETACL 2
1613 extern  SETACL3res * nfsacl3_setacl_3(SETACL3args *, void *);
1614 extern  SETACL3res * nfsacl3_setacl_3_svc(SETACL3args *, struct svc_req *);
1615 extern int nfsacl_program_3_freeresult (void *, zdrproc_t, caddr_t);
1616 
1617 #else /* K&R C */
1618 #define NFSACL3_NULL 0
1619 extern  void * nfsacl3_null_3();
1620 extern  void * nfsacl3_null_3_svc();
1621 #define NFSACL3_GETACL 1
1622 extern  GETACL3res * nfsacl3_getacl_3();
1623 extern  GETACL3res * nfsacl3_getacl_3_svc();
1624 #define NFSACL3_SETACL 2
1625 extern  SETACL3res * nfsacl3_setacl_3();
1626 extern  SETACL3res * nfsacl3_setacl_3_svc();
1627 extern int nfsacl_program_3_freeresult ();
1628 #endif /* K&R C */
1629 
1630 /* the zdr functions */
1631 
1632 #if defined(__STDC__) || defined(__cplusplus)
1633 extern  uint32_t zdr_cookieverf3 (ZDR *, cookieverf3);
1634 extern  uint32_t zdr_cookie3 (ZDR *, cookie3*);
1635 extern  uint32_t zdr_nfs_fh3 (ZDR *, nfs_fh3*);
1636 extern  uint32_t zdr_filename3 (ZDR *, filename3*);
1637 extern  uint32_t zdr_diropargs3 (ZDR *, diropargs3*);
1638 extern  uint32_t zdr_ftype3 (ZDR *, ftype3*);
1639 extern  uint32_t zdr_mode3 (ZDR *, mode3*);
1640 extern  uint32_t zdr_uid3 (ZDR *, uid3*);
1641 extern  uint32_t zdr_gid3 (ZDR *, gid3*);
1642 extern  uint32_t zdr_size3 (ZDR *, size3*);
1643 extern  uint32_t zdr_fileid3 (ZDR *, fileid3*);
1644 extern  uint32_t zdr_specdata3 (ZDR *, specdata3*);
1645 extern  uint32_t zdr_nfstime3 (ZDR *, nfstime3*);
1646 extern  uint32_t zdr_fattr3 (ZDR *, fattr3*);
1647 extern  uint32_t zdr_post_op_attr (ZDR *, post_op_attr*);
1648 extern  uint32_t zdr_nfsstat3 (ZDR *, nfsstat3*);
1649 extern  uint32_t zdr_stable_how (ZDR *, stable_how*);
1650 extern  uint32_t zdr_offset3 (ZDR *, offset3*);
1651 extern  uint32_t zdr_count3 (ZDR *, count3*);
1652 extern  uint32_t zdr_wcc_attr (ZDR *, wcc_attr*);
1653 extern  uint32_t zdr_pre_op_attr (ZDR *, pre_op_attr*);
1654 extern  uint32_t zdr_wcc_data (ZDR *, wcc_data*);
1655 extern  uint32_t zdr_WRITE3args (ZDR *, WRITE3args*);
1656 extern  uint32_t zdr_writeverf3 (ZDR *, writeverf3);
1657 extern  uint32_t zdr_WRITE3resok (ZDR *, WRITE3resok*);
1658 extern  uint32_t zdr_WRITE3resfail (ZDR *, WRITE3resfail*);
1659 extern  uint32_t zdr_WRITE3res (ZDR *, WRITE3res*);
1660 extern  uint32_t zdr_LOOKUP3args (ZDR *, LOOKUP3args*);
1661 extern  uint32_t zdr_LOOKUP3resok (ZDR *, LOOKUP3resok*);
1662 extern  uint32_t zdr_LOOKUP3resfail (ZDR *, LOOKUP3resfail*);
1663 extern  uint32_t zdr_LOOKUP3res (ZDR *, LOOKUP3res*);
1664 extern  uint32_t zdr_COMMIT3args (ZDR *, COMMIT3args*);
1665 extern  uint32_t zdr_COMMIT3resok (ZDR *, COMMIT3resok*);
1666 extern  uint32_t zdr_COMMIT3resfail (ZDR *, COMMIT3resfail*);
1667 extern  uint32_t zdr_COMMIT3res (ZDR *, COMMIT3res*);
1668 extern  uint32_t zdr_ACCESS3args (ZDR *, ACCESS3args*);
1669 extern  uint32_t zdr_ACCESS3resok (ZDR *, ACCESS3resok*);
1670 extern  uint32_t zdr_ACCESS3resfail (ZDR *, ACCESS3resfail*);
1671 extern  uint32_t zdr_ACCESS3res (ZDR *, ACCESS3res*);
1672 extern  uint32_t zdr_GETATTR3args (ZDR *, GETATTR3args*);
1673 extern  uint32_t zdr_GETATTR3resok (ZDR *, GETATTR3resok*);
1674 extern  uint32_t zdr_GETATTR3res (ZDR *, GETATTR3res*);
1675 extern  uint32_t zdr_time_how (ZDR *, time_how*);
1676 extern  uint32_t zdr_set_mode3 (ZDR *, set_mode3*);
1677 extern  uint32_t zdr_set_uid3 (ZDR *, set_uid3*);
1678 extern  uint32_t zdr_set_gid3 (ZDR *, set_gid3*);
1679 extern  uint32_t zdr_set_size3 (ZDR *, set_size3*);
1680 extern  uint32_t zdr_set_atime (ZDR *, set_atime*);
1681 extern  uint32_t zdr_set_mtime (ZDR *, set_mtime*);
1682 extern  uint32_t zdr_sattr3 (ZDR *, sattr3*);
1683 extern  uint32_t zdr_createmode3 (ZDR *, createmode3*);
1684 extern  uint32_t zdr_createverf3 (ZDR *, createverf3);
1685 extern  uint32_t zdr_createhow3 (ZDR *, createhow3*);
1686 extern  uint32_t zdr_CREATE3args (ZDR *, CREATE3args*);
1687 extern  uint32_t zdr_post_op_fh3 (ZDR *, post_op_fh3*);
1688 extern  uint32_t zdr_CREATE3resok (ZDR *, CREATE3resok*);
1689 extern  uint32_t zdr_CREATE3resfail (ZDR *, CREATE3resfail*);
1690 extern  uint32_t zdr_CREATE3res (ZDR *, CREATE3res*);
1691 extern  uint32_t zdr_REMOVE3args (ZDR *, REMOVE3args*);
1692 extern  uint32_t zdr_REMOVE3resok (ZDR *, REMOVE3resok*);
1693 extern  uint32_t zdr_REMOVE3resfail (ZDR *, REMOVE3resfail*);
1694 extern  uint32_t zdr_REMOVE3res (ZDR *, REMOVE3res*);
1695 extern  uint32_t zdr_READ3args (ZDR *, READ3args*);
1696 extern  uint32_t zdr_READ3resok (ZDR *, READ3resok*);
1697 extern  uint32_t zdr_READ3resfail (ZDR *, READ3resfail*);
1698 extern  uint32_t zdr_READ3res (ZDR *, READ3res*);
1699 extern  uint32_t zdr_FSINFO3args (ZDR *, FSINFO3args*);
1700 extern  uint32_t zdr_FSINFO3resok (ZDR *, FSINFO3resok*);
1701 extern  uint32_t zdr_FSINFO3resfail (ZDR *, FSINFO3resfail*);
1702 extern  uint32_t zdr_FSINFO3res (ZDR *, FSINFO3res*);
1703 extern  uint32_t zdr_FSSTAT3args (ZDR *, FSSTAT3args*);
1704 extern  uint32_t zdr_FSSTAT3resok (ZDR *, FSSTAT3resok*);
1705 extern  uint32_t zdr_FSSTAT3resfail (ZDR *, FSSTAT3resfail*);
1706 extern  uint32_t zdr_FSSTAT3res (ZDR *, FSSTAT3res*);
1707 extern  uint32_t zdr_PATHCONF3args (ZDR *, PATHCONF3args*);
1708 extern  uint32_t zdr_PATHCONF3resok (ZDR *, PATHCONF3resok*);
1709 extern  uint32_t zdr_PATHCONF3resfail (ZDR *, PATHCONF3resfail*);
1710 extern  uint32_t zdr_PATHCONF3res (ZDR *, PATHCONF3res*);
1711 extern  uint32_t zdr_nfspath3 (ZDR *, nfspath3*);
1712 extern  uint32_t zdr_symlinkdata3 (ZDR *, symlinkdata3*);
1713 extern  uint32_t zdr_SYMLINK3args (ZDR *, SYMLINK3args*);
1714 extern  uint32_t zdr_SYMLINK3resok (ZDR *, SYMLINK3resok*);
1715 extern  uint32_t zdr_SYMLINK3resfail (ZDR *, SYMLINK3resfail*);
1716 extern  uint32_t zdr_SYMLINK3res (ZDR *, SYMLINK3res*);
1717 extern  uint32_t zdr_READLINK3args (ZDR *, READLINK3args*);
1718 extern  uint32_t zdr_READLINK3resok (ZDR *, READLINK3resok*);
1719 extern  uint32_t zdr_READLINK3resfail (ZDR *, READLINK3resfail*);
1720 extern  uint32_t zdr_READLINK3res (ZDR *, READLINK3res*);
1721 extern  uint32_t zdr_devicedata3 (ZDR *, devicedata3*);
1722 extern  uint32_t zdr_mknoddata3 (ZDR *, mknoddata3*);
1723 extern  uint32_t zdr_MKNOD3args (ZDR *, MKNOD3args*);
1724 extern  uint32_t zdr_MKNOD3resok (ZDR *, MKNOD3resok*);
1725 extern  uint32_t zdr_MKNOD3resfail (ZDR *, MKNOD3resfail*);
1726 extern  uint32_t zdr_MKNOD3res (ZDR *, MKNOD3res*);
1727 extern  uint32_t zdr_MKDIR3args (ZDR *, MKDIR3args*);
1728 extern  uint32_t zdr_MKDIR3resok (ZDR *, MKDIR3resok*);
1729 extern  uint32_t zdr_MKDIR3resfail (ZDR *, MKDIR3resfail*);
1730 extern  uint32_t zdr_MKDIR3res (ZDR *, MKDIR3res*);
1731 extern  uint32_t zdr_RMDIR3args (ZDR *, RMDIR3args*);
1732 extern  uint32_t zdr_RMDIR3resok (ZDR *, RMDIR3resok*);
1733 extern  uint32_t zdr_RMDIR3resfail (ZDR *, RMDIR3resfail*);
1734 extern  uint32_t zdr_RMDIR3res (ZDR *, RMDIR3res*);
1735 extern  uint32_t zdr_RENAME3args (ZDR *, RENAME3args*);
1736 extern  uint32_t zdr_RENAME3resok (ZDR *, RENAME3resok*);
1737 extern  uint32_t zdr_RENAME3resfail (ZDR *, RENAME3resfail*);
1738 extern  uint32_t zdr_RENAME3res (ZDR *, RENAME3res*);
1739 extern  uint32_t zdr_READDIRPLUS3args (ZDR *, READDIRPLUS3args*);
1740 extern  uint32_t zdr_entryplus3 (ZDR *, entryplus3*);
1741 extern  uint32_t zdr_dirlistplus3 (ZDR *, dirlistplus3*);
1742 extern  uint32_t zdr_READDIRPLUS3resok (ZDR *, READDIRPLUS3resok*);
1743 extern  uint32_t zdr_READDIRPLUS3resfail (ZDR *, READDIRPLUS3resfail*);
1744 extern  uint32_t zdr_READDIRPLUS3res (ZDR *, READDIRPLUS3res*);
1745 extern  uint32_t zdr_READDIR3args (ZDR *, READDIR3args*);
1746 extern  uint32_t zdr_entry3 (ZDR *, entry3*);
1747 extern  uint32_t zdr_dirlist3 (ZDR *, dirlist3*);
1748 extern  uint32_t zdr_READDIR3resok (ZDR *, READDIR3resok*);
1749 extern  uint32_t zdr_READDIR3resfail (ZDR *, READDIR3resfail*);
1750 extern  uint32_t zdr_READDIR3res (ZDR *, READDIR3res*);
1751 extern  uint32_t zdr_LINK3args (ZDR *, LINK3args*);
1752 extern  uint32_t zdr_LINK3resok (ZDR *, LINK3resok*);
1753 extern  uint32_t zdr_LINK3resfail (ZDR *, LINK3resfail*);
1754 extern  uint32_t zdr_LINK3res (ZDR *, LINK3res*);
1755 extern  uint32_t zdr_sattrguard3 (ZDR *, sattrguard3*);
1756 extern  uint32_t zdr_SETATTR3args (ZDR *, SETATTR3args*);
1757 extern  uint32_t zdr_SETATTR3resok (ZDR *, SETATTR3resok*);
1758 extern  uint32_t zdr_SETATTR3resfail (ZDR *, SETATTR3resfail*);
1759 extern  uint32_t zdr_SETATTR3res (ZDR *, SETATTR3res*);
1760 extern  uint32_t zdr_fhandle2 (ZDR *, fhandle2);
1761 extern  uint32_t zdr_ftype2 (ZDR *, ftype2*);
1762 extern  uint32_t zdr_fattr2 (ZDR *, fattr2*);
1763 extern  uint32_t zdr_sattr2 (ZDR *, sattr2*);
1764 extern  uint32_t zdr_filename2 (ZDR *, filename2*);
1765 extern  uint32_t zdr_path2 (ZDR *, path2*);
1766 extern  uint32_t zdr_nfsdata2 (ZDR *, nfsdata2*);
1767 extern  uint32_t zdr_nfscookie2 (ZDR *, nfscookie2);
1768 extern  uint32_t zdr_entry2 (ZDR *, entry2*);
1769 extern  uint32_t zdr_diropargs2 (ZDR *, diropargs2*);
1770 extern  uint32_t zdr_GETATTR2args (ZDR *, GETATTR2args*);
1771 extern  uint32_t zdr_GETATTR2resok (ZDR *, GETATTR2resok*);
1772 extern  uint32_t zdr_GETATTR2res (ZDR *, GETATTR2res*);
1773 extern  uint32_t zdr_SETATTR2args (ZDR *, SETATTR2args*);
1774 extern  uint32_t zdr_SETATTR2resok (ZDR *, SETATTR2resok*);
1775 extern  uint32_t zdr_SETATTR2res (ZDR *, SETATTR2res*);
1776 extern  uint32_t zdr_LOOKUP2args (ZDR *, LOOKUP2args*);
1777 extern  uint32_t zdr_LOOKUP2resok (ZDR *, LOOKUP2resok*);
1778 extern  uint32_t zdr_LOOKUP2res (ZDR *, LOOKUP2res*);
1779 extern  uint32_t zdr_READLINK2args (ZDR *, READLINK2args*);
1780 extern  uint32_t zdr_READLINK2resok (ZDR *, READLINK2resok*);
1781 extern  uint32_t zdr_READLINK2res (ZDR *, READLINK2res*);
1782 extern  uint32_t zdr_READ2args (ZDR *, READ2args*);
1783 extern  uint32_t zdr_READ2resok (ZDR *, READ2resok*);
1784 extern  uint32_t zdr_READ2res (ZDR *, READ2res*);
1785 extern  uint32_t zdr_WRITE2args (ZDR *, WRITE2args*);
1786 extern  uint32_t zdr_WRITE2resok (ZDR *, WRITE2resok*);
1787 extern  uint32_t zdr_WRITE2res (ZDR *, WRITE2res*);
1788 extern  uint32_t zdr_CREATE2args (ZDR *, CREATE2args*);
1789 extern  uint32_t zdr_CREATE2resok (ZDR *, CREATE2resok*);
1790 extern  uint32_t zdr_CREATE2res (ZDR *, CREATE2res*);
1791 extern  uint32_t zdr_REMOVE2args (ZDR *, REMOVE2args*);
1792 extern  uint32_t zdr_REMOVE2res (ZDR *, REMOVE2res*);
1793 extern  uint32_t zdr_RENAME2args (ZDR *, RENAME2args*);
1794 extern  uint32_t zdr_RENAME2res (ZDR *, RENAME2res*);
1795 extern  uint32_t zdr_LINK2args (ZDR *, LINK2args*);
1796 extern  uint32_t zdr_LINK2res (ZDR *, LINK2res*);
1797 extern  uint32_t zdr_SYMLINK2args (ZDR *, SYMLINK2args*);
1798 extern  uint32_t zdr_SYMLINK2res (ZDR *, SYMLINK2res*);
1799 extern  uint32_t zdr_MKDIR2args (ZDR *, MKDIR2args*);
1800 extern  uint32_t zdr_MKDIR2resok (ZDR *, MKDIR2resok*);
1801 extern  uint32_t zdr_MKDIR2res (ZDR *, MKDIR2res*);
1802 extern  uint32_t zdr_RMDIR2args (ZDR *, RMDIR2args*);
1803 extern  uint32_t zdr_RMDIR2res (ZDR *, RMDIR2res*);
1804 extern  uint32_t zdr_READDIR2args (ZDR *, READDIR2args*);
1805 extern  uint32_t zdr_READDIR2resok (ZDR *, READDIR2resok*);
1806 extern  uint32_t zdr_READDIR2res (ZDR *, READDIR2res*);
1807 extern  uint32_t zdr_STATFS2args (ZDR *, STATFS2args*);
1808 extern  uint32_t zdr_STATFS2resok (ZDR *, STATFS2resok*);
1809 extern  uint32_t zdr_STATFS2res (ZDR *, STATFS2res*);
1810 extern  uint32_t zdr_nfsacl_type (ZDR *, nfsacl_type*);
1811 extern  uint32_t zdr_nfsacl_ace (ZDR *, nfsacl_ace*);
1812 extern  uint32_t zdr_GETACL3args (ZDR *, GETACL3args*);
1813 extern  uint32_t zdr_GETACL3resok (ZDR *, GETACL3resok*);
1814 extern  uint32_t zdr_GETACL3res (ZDR *, GETACL3res*);
1815 extern  uint32_t zdr_SETACL3args (ZDR *, SETACL3args*);
1816 extern  uint32_t zdr_SETACL3resok (ZDR *, SETACL3resok*);
1817 extern  uint32_t zdr_SETACL3res (ZDR *, SETACL3res*);
1818 
1819 #else /* K&R C */
1820 extern uint32_t zdr_cookieverf3 ();
1821 extern uint32_t zdr_cookie3 ();
1822 extern uint32_t zdr_nfs_fh3 ();
1823 extern uint32_t zdr_filename3 ();
1824 extern uint32_t zdr_diropargs3 ();
1825 extern uint32_t zdr_ftype3 ();
1826 extern uint32_t zdr_mode3 ();
1827 extern uint32_t zdr_uid3 ();
1828 extern uint32_t zdr_gid3 ();
1829 extern uint32_t zdr_size3 ();
1830 extern uint32_t zdr_fileid3 ();
1831 extern uint32_t zdr_specdata3 ();
1832 extern uint32_t zdr_nfstime3 ();
1833 extern uint32_t zdr_fattr3 ();
1834 extern uint32_t zdr_post_op_attr ();
1835 extern uint32_t zdr_nfsstat3 ();
1836 extern uint32_t zdr_stable_how ();
1837 extern uint32_t zdr_offset3 ();
1838 extern uint32_t zdr_count3 ();
1839 extern uint32_t zdr_wcc_attr ();
1840 extern uint32_t zdr_pre_op_attr ();
1841 extern uint32_t zdr_wcc_data ();
1842 extern uint32_t zdr_WRITE3args ();
1843 extern uint32_t zdr_writeverf3 ();
1844 extern uint32_t zdr_WRITE3resok ();
1845 extern uint32_t zdr_WRITE3resfail ();
1846 extern uint32_t zdr_WRITE3res ();
1847 extern uint32_t zdr_LOOKUP3args ();
1848 extern uint32_t zdr_LOOKUP3resok ();
1849 extern uint32_t zdr_LOOKUP3resfail ();
1850 extern uint32_t zdr_LOOKUP3res ();
1851 extern uint32_t zdr_COMMIT3args ();
1852 extern uint32_t zdr_COMMIT3resok ();
1853 extern uint32_t zdr_COMMIT3resfail ();
1854 extern uint32_t zdr_COMMIT3res ();
1855 extern uint32_t zdr_ACCESS3args ();
1856 extern uint32_t zdr_ACCESS3resok ();
1857 extern uint32_t zdr_ACCESS3resfail ();
1858 extern uint32_t zdr_ACCESS3res ();
1859 extern uint32_t zdr_GETATTR3args ();
1860 extern uint32_t zdr_GETATTR3resok ();
1861 extern uint32_t zdr_GETATTR3res ();
1862 extern uint32_t zdr_time_how ();
1863 extern uint32_t zdr_set_mode3 ();
1864 extern uint32_t zdr_set_uid3 ();
1865 extern uint32_t zdr_set_gid3 ();
1866 extern uint32_t zdr_set_size3 ();
1867 extern uint32_t zdr_set_atime ();
1868 extern uint32_t zdr_set_mtime ();
1869 extern uint32_t zdr_sattr3 ();
1870 extern uint32_t zdr_createmode3 ();
1871 extern uint32_t zdr_createverf3 ();
1872 extern uint32_t zdr_createhow3 ();
1873 extern uint32_t zdr_CREATE3args ();
1874 extern uint32_t zdr_post_op_fh3 ();
1875 extern uint32_t zdr_CREATE3resok ();
1876 extern uint32_t zdr_CREATE3resfail ();
1877 extern uint32_t zdr_CREATE3res ();
1878 extern uint32_t zdr_REMOVE3args ();
1879 extern uint32_t zdr_REMOVE3resok ();
1880 extern uint32_t zdr_REMOVE3resfail ();
1881 extern uint32_t zdr_REMOVE3res ();
1882 extern uint32_t zdr_READ3args ();
1883 extern uint32_t zdr_READ3resok ();
1884 extern uint32_t zdr_READ3resfail ();
1885 extern uint32_t zdr_READ3res ();
1886 extern uint32_t zdr_FSINFO3args ();
1887 extern uint32_t zdr_FSINFO3resok ();
1888 extern uint32_t zdr_FSINFO3resfail ();
1889 extern uint32_t zdr_FSINFO3res ();
1890 extern uint32_t zdr_FSSTAT3args ();
1891 extern uint32_t zdr_FSSTAT3resok ();
1892 extern uint32_t zdr_FSSTAT3resfail ();
1893 extern uint32_t zdr_FSSTAT3res ();
1894 extern uint32_t zdr_PATHCONF3args ();
1895 extern uint32_t zdr_PATHCONF3resok ();
1896 extern uint32_t zdr_PATHCONF3resfail ();
1897 extern uint32_t zdr_PATHCONF3res ();
1898 extern uint32_t zdr_nfspath3 ();
1899 extern uint32_t zdr_symlinkdata3 ();
1900 extern uint32_t zdr_SYMLINK3args ();
1901 extern uint32_t zdr_SYMLINK3resok ();
1902 extern uint32_t zdr_SYMLINK3resfail ();
1903 extern uint32_t zdr_SYMLINK3res ();
1904 extern uint32_t zdr_READLINK3args ();
1905 extern uint32_t zdr_READLINK3resok ();
1906 extern uint32_t zdr_READLINK3resfail ();
1907 extern uint32_t zdr_READLINK3res ();
1908 extern uint32_t zdr_devicedata3 ();
1909 extern uint32_t zdr_mknoddata3 ();
1910 extern uint32_t zdr_MKNOD3args ();
1911 extern uint32_t zdr_MKNOD3resok ();
1912 extern uint32_t zdr_MKNOD3resfail ();
1913 extern uint32_t zdr_MKNOD3res ();
1914 extern uint32_t zdr_MKDIR3args ();
1915 extern uint32_t zdr_MKDIR3resok ();
1916 extern uint32_t zdr_MKDIR3resfail ();
1917 extern uint32_t zdr_MKDIR3res ();
1918 extern uint32_t zdr_RMDIR3args ();
1919 extern uint32_t zdr_RMDIR3resok ();
1920 extern uint32_t zdr_RMDIR3resfail ();
1921 extern uint32_t zdr_RMDIR3res ();
1922 extern uint32_t zdr_RENAME3args ();
1923 extern uint32_t zdr_RENAME3resok ();
1924 extern uint32_t zdr_RENAME3resfail ();
1925 extern uint32_t zdr_RENAME3res ();
1926 extern uint32_t zdr_READDIRPLUS3args ();
1927 extern uint32_t zdr_entryplus3 ();
1928 extern uint32_t zdr_dirlistplus3 ();
1929 extern uint32_t zdr_READDIRPLUS3resok ();
1930 extern uint32_t zdr_READDIRPLUS3resfail ();
1931 extern uint32_t zdr_READDIRPLUS3res ();
1932 extern uint32_t zdr_READDIR3args ();
1933 extern uint32_t zdr_entry3 ();
1934 extern uint32_t zdr_dirlist3 ();
1935 extern uint32_t zdr_READDIR3resok ();
1936 extern uint32_t zdr_READDIR3resfail ();
1937 extern uint32_t zdr_READDIR3res ();
1938 extern uint32_t zdr_LINK3args ();
1939 extern uint32_t zdr_LINK3resok ();
1940 extern uint32_t zdr_LINK3resfail ();
1941 extern uint32_t zdr_LINK3res ();
1942 extern uint32_t zdr_sattrguard3 ();
1943 extern uint32_t zdr_SETATTR3args ();
1944 extern uint32_t zdr_SETATTR3resok ();
1945 extern uint32_t zdr_SETATTR3resfail ();
1946 extern uint32_t zdr_SETATTR3res ();
1947 extern uint32_t zdr_fhandle2 ();
1948 extern uint32_t zdr_ftype2 ();
1949 extern uint32_t zdr_fattr2 ();
1950 extern uint32_t zdr_sattr2 ();
1951 extern uint32_t zdr_filename2 ();
1952 extern uint32_t zdr_path2 ();
1953 extern uint32_t zdr_nfsdata2 ();
1954 extern uint32_t zdr_nfscookie2 ();
1955 extern uint32_t zdr_entry2 ();
1956 extern uint32_t zdr_diropargs2 ();
1957 extern uint32_t zdr_GETATTR2args ();
1958 extern uint32_t zdr_GETATTR2resok ();
1959 extern uint32_t zdr_GETATTR2res ();
1960 extern uint32_t zdr_SETATTR2args ();
1961 extern uint32_t zdr_SETATTR2resok ();
1962 extern uint32_t zdr_SETATTR2res ();
1963 extern uint32_t zdr_LOOKUP2args ();
1964 extern uint32_t zdr_LOOKUP2resok ();
1965 extern uint32_t zdr_LOOKUP2res ();
1966 extern uint32_t zdr_READLINK2args ();
1967 extern uint32_t zdr_READLINK2resok ();
1968 extern uint32_t zdr_READLINK2res ();
1969 extern uint32_t zdr_READ2args ();
1970 extern uint32_t zdr_READ2resok ();
1971 extern uint32_t zdr_READ2res ();
1972 extern uint32_t zdr_WRITE2args ();
1973 extern uint32_t zdr_WRITE2resok ();
1974 extern uint32_t zdr_WRITE2res ();
1975 extern uint32_t zdr_CREATE2args ();
1976 extern uint32_t zdr_CREATE2resok ();
1977 extern uint32_t zdr_CREATE2res ();
1978 extern uint32_t zdr_REMOVE2args ();
1979 extern uint32_t zdr_REMOVE2res ();
1980 extern uint32_t zdr_RENAME2args ();
1981 extern uint32_t zdr_RENAME2res ();
1982 extern uint32_t zdr_LINK2args ();
1983 extern uint32_t zdr_LINK2res ();
1984 extern uint32_t zdr_SYMLINK2args ();
1985 extern uint32_t zdr_SYMLINK2res ();
1986 extern uint32_t zdr_MKDIR2args ();
1987 extern uint32_t zdr_MKDIR2resok ();
1988 extern uint32_t zdr_MKDIR2res ();
1989 extern uint32_t zdr_RMDIR2args ();
1990 extern uint32_t zdr_RMDIR2res ();
1991 extern uint32_t zdr_READDIR2args ();
1992 extern uint32_t zdr_READDIR2resok ();
1993 extern uint32_t zdr_READDIR2res ();
1994 extern uint32_t zdr_STATFS2args ();
1995 extern uint32_t zdr_STATFS2resok ();
1996 extern uint32_t zdr_STATFS2res ();
1997 extern uint32_t zdr_nfsacl_type ();
1998 extern uint32_t zdr_nfsacl_ace ();
1999 extern uint32_t zdr_GETACL3args ();
2000 extern uint32_t zdr_GETACL3resok ();
2001 extern uint32_t zdr_GETACL3res ();
2002 extern uint32_t zdr_SETACL3args ();
2003 extern uint32_t zdr_SETACL3resok ();
2004 extern uint32_t zdr_SETACL3res ();
2005 
2006 #endif /* K&R C */
2007 
2008 #ifdef __cplusplus
2009 }
2010 #endif
2011 
2012 #endif /* !_NFS_H_RPCGEN */
2013