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