Take maintenance for libnfs
[deb_libnfs.git] / nfs / libnfs-raw-nfs.c
CommitLineData
ee872606
RRS
1/*
2 * Please do not edit this file.
3 * It was generated using rpcgen.
4 */
5
6#include "libnfs-zdr.h"
7#include "libnfs-raw-nfs.h"
8
9bool_t
10zdr_cookieverf3 (ZDR *zdrs, cookieverf3 objp)
11{
12 register int32_t *buf;
13 buf = NULL;
14
15 if (!zdr_opaque (zdrs, objp, NFS3_COOKIEVERFSIZE))
16 return FALSE;
17 return TRUE;
18}
19
20bool_t
21zdr_uint64 (ZDR *zdrs, uint64 *objp)
22{
23 register int32_t *buf;
24 buf = NULL;
25
26 if (!zdr_u_quad_t (zdrs, objp))
27 return FALSE;
28 return TRUE;
29}
30
31bool_t
32zdr_cookie3 (ZDR *zdrs, cookie3 *objp)
33{
34 register int32_t *buf;
35 buf = NULL;
36
37 if (!zdr_uint64 (zdrs, objp))
38 return FALSE;
39 return TRUE;
40}
41
42bool_t
43zdr_nfs_fh3 (ZDR *zdrs, nfs_fh3 *objp)
44{
45 register int32_t *buf;
46 buf = NULL;
47
48 if (!zdr_bytes (zdrs, (char **)&objp->data.data_val, (u_int *) &objp->data.data_len, NFS3_FHSIZE))
49 return FALSE;
50 return TRUE;
51}
52
53bool_t
54zdr_filename3 (ZDR *zdrs, filename3 *objp)
55{
56 register int32_t *buf;
57 buf = NULL;
58
59 if (!zdr_string (zdrs, objp, ~0))
60 return FALSE;
61 return TRUE;
62}
63
64bool_t
65zdr_diropargs3 (ZDR *zdrs, diropargs3 *objp)
66{
67 register int32_t *buf;
68 buf = NULL;
69
70 if (!zdr_nfs_fh3 (zdrs, &objp->dir))
71 return FALSE;
72 if (!zdr_filename3 (zdrs, &objp->name))
73 return FALSE;
74 return TRUE;
75}
76
77bool_t
78zdr_ftype3 (ZDR *zdrs, ftype3 *objp)
79{
80 register int32_t *buf;
81 buf = NULL;
82
83 if (!zdr_enum (zdrs, (enum_t *) objp))
84 return FALSE;
85 return TRUE;
86}
87
88bool_t
89zdr_mode3 (ZDR *zdrs, mode3 *objp)
90{
91 register int32_t *buf;
92 buf = NULL;
93
94 if (!zdr_u_int (zdrs, objp))
95 return FALSE;
96 return TRUE;
97}
98
99bool_t
100zdr_uid3 (ZDR *zdrs, uid3 *objp)
101{
102 register int32_t *buf;
103 buf = NULL;
104
105 if (!zdr_u_int (zdrs, objp))
106 return FALSE;
107 return TRUE;
108}
109
110bool_t
111zdr_gid3 (ZDR *zdrs, gid3 *objp)
112{
113 register int32_t *buf;
114 buf = NULL;
115
116 if (!zdr_u_int (zdrs, objp))
117 return FALSE;
118 return TRUE;
119}
120
121bool_t
122zdr_size3 (ZDR *zdrs, size3 *objp)
123{
124 register int32_t *buf;
125 buf = NULL;
126
127 if (!zdr_uint64 (zdrs, objp))
128 return FALSE;
129 return TRUE;
130}
131
132bool_t
133zdr_fileid3 (ZDR *zdrs, fileid3 *objp)
134{
135 register int32_t *buf;
136 buf = NULL;
137
138 if (!zdr_uint64 (zdrs, objp))
139 return FALSE;
140 return TRUE;
141}
142
143bool_t
144zdr_specdata3 (ZDR *zdrs, specdata3 *objp)
145{
146 register int32_t *buf;
147 buf = NULL;
148
149 if (!zdr_u_int (zdrs, &objp->specdata1))
150 return FALSE;
151 if (!zdr_u_int (zdrs, &objp->specdata2))
152 return FALSE;
153 return TRUE;
154}
155
156bool_t
157zdr_nfstime3 (ZDR *zdrs, nfstime3 *objp)
158{
159 register int32_t *buf;
160 buf = NULL;
161
162 if (!zdr_u_int (zdrs, &objp->seconds))
163 return FALSE;
164 if (!zdr_u_int (zdrs, &objp->nseconds))
165 return FALSE;
166 return TRUE;
167}
168
169bool_t
170zdr_fattr3 (ZDR *zdrs, fattr3 *objp)
171{
172 register int32_t *buf;
173 buf = NULL;
174
175 if (!zdr_ftype3 (zdrs, &objp->type))
176 return FALSE;
177 if (!zdr_mode3 (zdrs, &objp->mode))
178 return FALSE;
179 if (!zdr_u_int (zdrs, &objp->nlink))
180 return FALSE;
181 if (!zdr_uid3 (zdrs, &objp->uid))
182 return FALSE;
183 if (!zdr_gid3 (zdrs, &objp->gid))
184 return FALSE;
185 if (!zdr_size3 (zdrs, &objp->size))
186 return FALSE;
187 if (!zdr_size3 (zdrs, &objp->used))
188 return FALSE;
189 if (!zdr_specdata3 (zdrs, &objp->rdev))
190 return FALSE;
191 if (!zdr_uint64 (zdrs, &objp->fsid))
192 return FALSE;
193 if (!zdr_fileid3 (zdrs, &objp->fileid))
194 return FALSE;
195 if (!zdr_nfstime3 (zdrs, &objp->atime))
196 return FALSE;
197 if (!zdr_nfstime3 (zdrs, &objp->mtime))
198 return FALSE;
199 if (!zdr_nfstime3 (zdrs, &objp->ctime))
200 return FALSE;
201 return TRUE;
202}
203
204bool_t
205zdr_post_op_attr (ZDR *zdrs, post_op_attr *objp)
206{
207 register int32_t *buf;
208 buf = NULL;
209
210 if (!zdr_bool (zdrs, &objp->attributes_follow))
211 return FALSE;
212 switch (objp->attributes_follow) {
213 case TRUE:
214 if (!zdr_fattr3 (zdrs, &objp->post_op_attr_u.attributes))
215 return FALSE;
216 break;
217 case FALSE:
218 break;
219 default:
220 return FALSE;
221 }
222 return TRUE;
223}
224
225bool_t
226zdr_nfsstat3 (ZDR *zdrs, nfsstat3 *objp)
227{
228 register int32_t *buf;
229 buf = NULL;
230
231 if (!zdr_enum (zdrs, (enum_t *) objp))
232 return FALSE;
233 return TRUE;
234}
235
236bool_t
237zdr_stable_how (ZDR *zdrs, stable_how *objp)
238{
239 register int32_t *buf;
240 buf = NULL;
241
242 if (!zdr_enum (zdrs, (enum_t *) objp))
243 return FALSE;
244 return TRUE;
245}
246
247bool_t
248zdr_offset3 (ZDR *zdrs, offset3 *objp)
249{
250 register int32_t *buf;
251 buf = NULL;
252
253 if (!zdr_uint64 (zdrs, objp))
254 return FALSE;
255 return TRUE;
256}
257
258bool_t
259zdr_count3 (ZDR *zdrs, count3 *objp)
260{
261 register int32_t *buf;
262 buf = NULL;
263
264 if (!zdr_u_int (zdrs, objp))
265 return FALSE;
266 return TRUE;
267}
268
269bool_t
270zdr_wcc_attr (ZDR *zdrs, wcc_attr *objp)
271{
272 register int32_t *buf;
273 buf = NULL;
274
275 if (!zdr_size3 (zdrs, &objp->size))
276 return FALSE;
277 if (!zdr_nfstime3 (zdrs, &objp->mtime))
278 return FALSE;
279 if (!zdr_nfstime3 (zdrs, &objp->ctime))
280 return FALSE;
281 return TRUE;
282}
283
284bool_t
285zdr_pre_op_attr (ZDR *zdrs, pre_op_attr *objp)
286{
287 register int32_t *buf;
288 buf = NULL;
289
290 if (!zdr_bool (zdrs, &objp->attributes_follow))
291 return FALSE;
292 switch (objp->attributes_follow) {
293 case TRUE:
294 if (!zdr_wcc_attr (zdrs, &objp->pre_op_attr_u.attributes))
295 return FALSE;
296 break;
297 case FALSE:
298 break;
299 default:
300 return FALSE;
301 }
302 return TRUE;
303}
304
305bool_t
306zdr_wcc_data (ZDR *zdrs, wcc_data *objp)
307{
308 register int32_t *buf;
309 buf = NULL;
310
311 if (!zdr_pre_op_attr (zdrs, &objp->before))
312 return FALSE;
313 if (!zdr_post_op_attr (zdrs, &objp->after))
314 return FALSE;
315 return TRUE;
316}
317
318bool_t
319zdr_WRITE3args (ZDR *zdrs, WRITE3args *objp)
320{
321 register int32_t *buf;
322 buf = NULL;
323
324 if (!zdr_nfs_fh3 (zdrs, &objp->file))
325 return FALSE;
326 if (!zdr_offset3 (zdrs, &objp->offset))
327 return FALSE;
328 if (!zdr_count3 (zdrs, &objp->count))
329 return FALSE;
330 if (!zdr_stable_how (zdrs, &objp->stable))
331 return FALSE;
332 if (!zdr_bytes (zdrs, (char **)&objp->data.data_val, (u_int *) &objp->data.data_len, ~0))
333 return FALSE;
334 return TRUE;
335}
336
337bool_t
338zdr_writeverf3 (ZDR *zdrs, writeverf3 objp)
339{
340 register int32_t *buf;
341 buf = NULL;
342
343 if (!zdr_opaque (zdrs, objp, NFS3_WRITEVERFSIZE))
344 return FALSE;
345 return TRUE;
346}
347
348bool_t
349zdr_WRITE3resok (ZDR *zdrs, WRITE3resok *objp)
350{
351 register int32_t *buf;
352 buf = NULL;
353
354 if (!zdr_wcc_data (zdrs, &objp->file_wcc))
355 return FALSE;
356 if (!zdr_count3 (zdrs, &objp->count))
357 return FALSE;
358 if (!zdr_stable_how (zdrs, &objp->committed))
359 return FALSE;
360 if (!zdr_writeverf3 (zdrs, objp->verf))
361 return FALSE;
362 return TRUE;
363}
364
365bool_t
366zdr_WRITE3resfail (ZDR *zdrs, WRITE3resfail *objp)
367{
368 register int32_t *buf;
369 buf = NULL;
370
371 if (!zdr_wcc_data (zdrs, &objp->file_wcc))
372 return FALSE;
373 return TRUE;
374}
375
376bool_t
377zdr_WRITE3res (ZDR *zdrs, WRITE3res *objp)
378{
379 register int32_t *buf;
380 buf = NULL;
381
382 if (!zdr_nfsstat3 (zdrs, &objp->status))
383 return FALSE;
384 switch (objp->status) {
385 case NFS3_OK:
386 if (!zdr_WRITE3resok (zdrs, &objp->WRITE3res_u.resok))
387 return FALSE;
388 break;
389 default:
390 if (!zdr_WRITE3resfail (zdrs, &objp->WRITE3res_u.resfail))
391 return FALSE;
392 break;
393 }
394 return TRUE;
395}
396
397bool_t
398zdr_LOOKUP3args (ZDR *zdrs, LOOKUP3args *objp)
399{
400 register int32_t *buf;
401 buf = NULL;
402
403 if (!zdr_diropargs3 (zdrs, &objp->what))
404 return FALSE;
405 return TRUE;
406}
407
408bool_t
409zdr_LOOKUP3resok (ZDR *zdrs, LOOKUP3resok *objp)
410{
411 register int32_t *buf;
412 buf = NULL;
413
414 if (!zdr_nfs_fh3 (zdrs, &objp->object))
415 return FALSE;
416 if (!zdr_post_op_attr (zdrs, &objp->obj_attributes))
417 return FALSE;
418 if (!zdr_post_op_attr (zdrs, &objp->dir_attributes))
419 return FALSE;
420 return TRUE;
421}
422
423bool_t
424zdr_LOOKUP3resfail (ZDR *zdrs, LOOKUP3resfail *objp)
425{
426 register int32_t *buf;
427 buf = NULL;
428
429 if (!zdr_post_op_attr (zdrs, &objp->dir_attributes))
430 return FALSE;
431 return TRUE;
432}
433
434bool_t
435zdr_LOOKUP3res (ZDR *zdrs, LOOKUP3res *objp)
436{
437 register int32_t *buf;
438 buf = NULL;
439
440 if (!zdr_nfsstat3 (zdrs, &objp->status))
441 return FALSE;
442 switch (objp->status) {
443 case NFS3_OK:
444 if (!zdr_LOOKUP3resok (zdrs, &objp->LOOKUP3res_u.resok))
445 return FALSE;
446 break;
447 default:
448 if (!zdr_LOOKUP3resfail (zdrs, &objp->LOOKUP3res_u.resfail))
449 return FALSE;
450 break;
451 }
452 return TRUE;
453}
454
455bool_t
456zdr_COMMIT3args (ZDR *zdrs, COMMIT3args *objp)
457{
458 register int32_t *buf;
459 buf = NULL;
460
461 if (!zdr_nfs_fh3 (zdrs, &objp->file))
462 return FALSE;
463 if (!zdr_offset3 (zdrs, &objp->offset))
464 return FALSE;
465 if (!zdr_count3 (zdrs, &objp->count))
466 return FALSE;
467 return TRUE;
468}
469
470bool_t
471zdr_COMMIT3resok (ZDR *zdrs, COMMIT3resok *objp)
472{
473 register int32_t *buf;
474 buf = NULL;
475
476 if (!zdr_wcc_data (zdrs, &objp->file_wcc))
477 return FALSE;
478 if (!zdr_writeverf3 (zdrs, objp->verf))
479 return FALSE;
480 return TRUE;
481}
482
483bool_t
484zdr_COMMIT3resfail (ZDR *zdrs, COMMIT3resfail *objp)
485{
486 register int32_t *buf;
487 buf = NULL;
488
489 if (!zdr_wcc_data (zdrs, &objp->file_wcc))
490 return FALSE;
491 return TRUE;
492}
493
494bool_t
495zdr_COMMIT3res (ZDR *zdrs, COMMIT3res *objp)
496{
497 register int32_t *buf;
498 buf = NULL;
499
500 if (!zdr_nfsstat3 (zdrs, &objp->status))
501 return FALSE;
502 switch (objp->status) {
503 case NFS3_OK:
504 if (!zdr_COMMIT3resok (zdrs, &objp->COMMIT3res_u.resok))
505 return FALSE;
506 break;
507 default:
508 if (!zdr_COMMIT3resfail (zdrs, &objp->COMMIT3res_u.resfail))
509 return FALSE;
510 break;
511 }
512 return TRUE;
513}
514
515bool_t
516zdr_ACCESS3args (ZDR *zdrs, ACCESS3args *objp)
517{
518 register int32_t *buf;
519 buf = NULL;
520
521 if (!zdr_nfs_fh3 (zdrs, &objp->object))
522 return FALSE;
523 if (!zdr_u_int (zdrs, &objp->access))
524 return FALSE;
525 return TRUE;
526}
527
528bool_t
529zdr_ACCESS3resok (ZDR *zdrs, ACCESS3resok *objp)
530{
531 register int32_t *buf;
532 buf = NULL;
533
534 if (!zdr_post_op_attr (zdrs, &objp->obj_attributes))
535 return FALSE;
536 if (!zdr_u_int (zdrs, &objp->access))
537 return FALSE;
538 return TRUE;
539}
540
541bool_t
542zdr_ACCESS3resfail (ZDR *zdrs, ACCESS3resfail *objp)
543{
544 register int32_t *buf;
545 buf = NULL;
546
547 if (!zdr_post_op_attr (zdrs, &objp->obj_attributes))
548 return FALSE;
549 return TRUE;
550}
551
552bool_t
553zdr_ACCESS3res (ZDR *zdrs, ACCESS3res *objp)
554{
555 register int32_t *buf;
556 buf = NULL;
557
558 if (!zdr_nfsstat3 (zdrs, &objp->status))
559 return FALSE;
560 switch (objp->status) {
561 case NFS3_OK:
562 if (!zdr_ACCESS3resok (zdrs, &objp->ACCESS3res_u.resok))
563 return FALSE;
564 break;
565 default:
566 if (!zdr_ACCESS3resfail (zdrs, &objp->ACCESS3res_u.resfail))
567 return FALSE;
568 break;
569 }
570 return TRUE;
571}
572
573bool_t
574zdr_GETATTR3args (ZDR *zdrs, GETATTR3args *objp)
575{
576 register int32_t *buf;
577 buf = NULL;
578
579 if (!zdr_nfs_fh3 (zdrs, &objp->object))
580 return FALSE;
581 return TRUE;
582}
583
584bool_t
585zdr_GETATTR3resok (ZDR *zdrs, GETATTR3resok *objp)
586{
587 register int32_t *buf;
588 buf = NULL;
589
590 if (!zdr_fattr3 (zdrs, &objp->obj_attributes))
591 return FALSE;
592 return TRUE;
593}
594
595bool_t
596zdr_GETATTR3res (ZDR *zdrs, GETATTR3res *objp)
597{
598 register int32_t *buf;
599 buf = NULL;
600
601 if (!zdr_nfsstat3 (zdrs, &objp->status))
602 return FALSE;
603 switch (objp->status) {
604 case NFS3_OK:
605 if (!zdr_GETATTR3resok (zdrs, &objp->GETATTR3res_u.resok))
606 return FALSE;
607 break;
608 default:
609 break;
610 }
611 return TRUE;
612}
613
614bool_t
615zdr_time_how (ZDR *zdrs, time_how *objp)
616{
617 register int32_t *buf;
618 buf = NULL;
619
620 if (!zdr_enum (zdrs, (enum_t *) objp))
621 return FALSE;
622 return TRUE;
623}
624
625bool_t
626zdr_set_mode3 (ZDR *zdrs, set_mode3 *objp)
627{
628 register int32_t *buf;
629 buf = NULL;
630
631 if (!zdr_bool (zdrs, &objp->set_it))
632 return FALSE;
633 switch (objp->set_it) {
634 case TRUE:
635 if (!zdr_mode3 (zdrs, &objp->set_mode3_u.mode))
636 return FALSE;
637 break;
638 default:
639 break;
640 }
641 return TRUE;
642}
643
644bool_t
645zdr_set_uid3 (ZDR *zdrs, set_uid3 *objp)
646{
647 register int32_t *buf;
648 buf = NULL;
649
650 if (!zdr_bool (zdrs, &objp->set_it))
651 return FALSE;
652 switch (objp->set_it) {
653 case TRUE:
654 if (!zdr_uid3 (zdrs, &objp->set_uid3_u.uid))
655 return FALSE;
656 break;
657 default:
658 break;
659 }
660 return TRUE;
661}
662
663bool_t
664zdr_set_gid3 (ZDR *zdrs, set_gid3 *objp)
665{
666 register int32_t *buf;
667 buf = NULL;
668
669 if (!zdr_bool (zdrs, &objp->set_it))
670 return FALSE;
671 switch (objp->set_it) {
672 case TRUE:
673 if (!zdr_gid3 (zdrs, &objp->set_gid3_u.gid))
674 return FALSE;
675 break;
676 default:
677 break;
678 }
679 return TRUE;
680}
681
682bool_t
683zdr_set_size3 (ZDR *zdrs, set_size3 *objp)
684{
685 register int32_t *buf;
686 buf = NULL;
687
688 if (!zdr_bool (zdrs, &objp->set_it))
689 return FALSE;
690 switch (objp->set_it) {
691 case TRUE:
692 if (!zdr_size3 (zdrs, &objp->set_size3_u.size))
693 return FALSE;
694 break;
695 default:
696 break;
697 }
698 return TRUE;
699}
700
701bool_t
702zdr_set_atime (ZDR *zdrs, set_atime *objp)
703{
704 register int32_t *buf;
705 buf = NULL;
706
707 if (!zdr_time_how (zdrs, &objp->set_it))
708 return FALSE;
709 switch (objp->set_it) {
710 case SET_TO_CLIENT_TIME:
711 if (!zdr_nfstime3 (zdrs, &objp->set_atime_u.atime))
712 return FALSE;
713 break;
714 default:
715 break;
716 }
717 return TRUE;
718}
719
720bool_t
721zdr_set_mtime (ZDR *zdrs, set_mtime *objp)
722{
723 register int32_t *buf;
724 buf = NULL;
725
726 if (!zdr_time_how (zdrs, &objp->set_it))
727 return FALSE;
728 switch (objp->set_it) {
729 case SET_TO_CLIENT_TIME:
730 if (!zdr_nfstime3 (zdrs, &objp->set_mtime_u.mtime))
731 return FALSE;
732 break;
733 default:
734 break;
735 }
736 return TRUE;
737}
738
739bool_t
740zdr_sattr3 (ZDR *zdrs, sattr3 *objp)
741{
742 register int32_t *buf;
743 buf = NULL;
744
745 if (!zdr_set_mode3 (zdrs, &objp->mode))
746 return FALSE;
747 if (!zdr_set_uid3 (zdrs, &objp->uid))
748 return FALSE;
749 if (!zdr_set_gid3 (zdrs, &objp->gid))
750 return FALSE;
751 if (!zdr_set_size3 (zdrs, &objp->size))
752 return FALSE;
753 if (!zdr_set_atime (zdrs, &objp->atime))
754 return FALSE;
755 if (!zdr_set_mtime (zdrs, &objp->mtime))
756 return FALSE;
757 return TRUE;
758}
759
760bool_t
761zdr_createmode3 (ZDR *zdrs, createmode3 *objp)
762{
763 register int32_t *buf;
764 buf = NULL;
765
766 if (!zdr_enum (zdrs, (enum_t *) objp))
767 return FALSE;
768 return TRUE;
769}
770
771bool_t
772zdr_createverf3 (ZDR *zdrs, createverf3 objp)
773{
774 register int32_t *buf;
775 buf = NULL;
776
777 if (!zdr_opaque (zdrs, objp, NFS3_CREATEVERFSIZE))
778 return FALSE;
779 return TRUE;
780}
781
782bool_t
783zdr_createhow3 (ZDR *zdrs, createhow3 *objp)
784{
785 register int32_t *buf;
786 buf = NULL;
787
788 if (!zdr_createmode3 (zdrs, &objp->mode))
789 return FALSE;
790 switch (objp->mode) {
791 case UNCHECKED:
792 if (!zdr_sattr3 (zdrs, &objp->createhow3_u.obj_attributes))
793 return FALSE;
794 break;
795 case GUARDED:
796 if (!zdr_sattr3 (zdrs, &objp->createhow3_u.g_obj_attributes))
797 return FALSE;
798 break;
799 case EXCLUSIVE:
800 if (!zdr_createverf3 (zdrs, objp->createhow3_u.verf))
801 return FALSE;
802 break;
803 default:
804 return FALSE;
805 }
806 return TRUE;
807}
808
809bool_t
810zdr_CREATE3args (ZDR *zdrs, CREATE3args *objp)
811{
812 register int32_t *buf;
813 buf = NULL;
814
815 if (!zdr_diropargs3 (zdrs, &objp->where))
816 return FALSE;
817 if (!zdr_createhow3 (zdrs, &objp->how))
818 return FALSE;
819 return TRUE;
820}
821
822bool_t
823zdr_post_op_fh3 (ZDR *zdrs, post_op_fh3 *objp)
824{
825 register int32_t *buf;
826 buf = NULL;
827
828 if (!zdr_bool (zdrs, &objp->handle_follows))
829 return FALSE;
830 switch (objp->handle_follows) {
831 case TRUE:
832 if (!zdr_nfs_fh3 (zdrs, &objp->post_op_fh3_u.handle))
833 return FALSE;
834 break;
835 case FALSE:
836 break;
837 default:
838 return FALSE;
839 }
840 return TRUE;
841}
842
843bool_t
844zdr_CREATE3resok (ZDR *zdrs, CREATE3resok *objp)
845{
846 register int32_t *buf;
847 buf = NULL;
848
849 if (!zdr_post_op_fh3 (zdrs, &objp->obj))
850 return FALSE;
851 if (!zdr_post_op_attr (zdrs, &objp->obj_attributes))
852 return FALSE;
853 if (!zdr_wcc_data (zdrs, &objp->dir_wcc))
854 return FALSE;
855 return TRUE;
856}
857
858bool_t
859zdr_CREATE3resfail (ZDR *zdrs, CREATE3resfail *objp)
860{
861 register int32_t *buf;
862 buf = NULL;
863
864 if (!zdr_wcc_data (zdrs, &objp->dir_wcc))
865 return FALSE;
866 return TRUE;
867}
868
869bool_t
870zdr_CREATE3res (ZDR *zdrs, CREATE3res *objp)
871{
872 register int32_t *buf;
873 buf = NULL;
874
875 if (!zdr_nfsstat3 (zdrs, &objp->status))
876 return FALSE;
877 switch (objp->status) {
878 case NFS3_OK:
879 if (!zdr_CREATE3resok (zdrs, &objp->CREATE3res_u.resok))
880 return FALSE;
881 break;
882 default:
883 if (!zdr_CREATE3resfail (zdrs, &objp->CREATE3res_u.resfail))
884 return FALSE;
885 break;
886 }
887 return TRUE;
888}
889
890bool_t
891zdr_REMOVE3args (ZDR *zdrs, REMOVE3args *objp)
892{
893 register int32_t *buf;
894 buf = NULL;
895
896 if (!zdr_diropargs3 (zdrs, &objp->object))
897 return FALSE;
898 return TRUE;
899}
900
901bool_t
902zdr_REMOVE3resok (ZDR *zdrs, REMOVE3resok *objp)
903{
904 register int32_t *buf;
905 buf = NULL;
906
907 if (!zdr_wcc_data (zdrs, &objp->dir_wcc))
908 return FALSE;
909 return TRUE;
910}
911
912bool_t
913zdr_REMOVE3resfail (ZDR *zdrs, REMOVE3resfail *objp)
914{
915 register int32_t *buf;
916 buf = NULL;
917
918 if (!zdr_wcc_data (zdrs, &objp->dir_wcc))
919 return FALSE;
920 return TRUE;
921}
922
923bool_t
924zdr_REMOVE3res (ZDR *zdrs, REMOVE3res *objp)
925{
926 register int32_t *buf;
927 buf = NULL;
928
929 if (!zdr_nfsstat3 (zdrs, &objp->status))
930 return FALSE;
931 switch (objp->status) {
932 case NFS3_OK:
933 if (!zdr_REMOVE3resok (zdrs, &objp->REMOVE3res_u.resok))
934 return FALSE;
935 break;
936 default:
937 if (!zdr_REMOVE3resfail (zdrs, &objp->REMOVE3res_u.resfail))
938 return FALSE;
939 break;
940 }
941 return TRUE;
942}
943
944bool_t
945zdr_READ3args (ZDR *zdrs, READ3args *objp)
946{
947 register int32_t *buf;
948 buf = NULL;
949
950 if (!zdr_nfs_fh3 (zdrs, &objp->file))
951 return FALSE;
952 if (!zdr_offset3 (zdrs, &objp->offset))
953 return FALSE;
954 if (!zdr_count3 (zdrs, &objp->count))
955 return FALSE;
956 return TRUE;
957}
958
959bool_t
960zdr_READ3resok (ZDR *zdrs, READ3resok *objp)
961{
962 register int32_t *buf;
963 buf = NULL;
964
965 if (!zdr_post_op_attr (zdrs, &objp->file_attributes))
966 return FALSE;
967 if (!zdr_count3 (zdrs, &objp->count))
968 return FALSE;
969 if (!zdr_bool (zdrs, &objp->eof))
970 return FALSE;
971 if (!zdr_bytes (zdrs, (char **)&objp->data.data_val, (u_int *) &objp->data.data_len, ~0))
972 return FALSE;
973 return TRUE;
974}
975
976bool_t
977zdr_READ3resfail (ZDR *zdrs, READ3resfail *objp)
978{
979 register int32_t *buf;
980 buf = NULL;
981
982 if (!zdr_post_op_attr (zdrs, &objp->file_attributes))
983 return FALSE;
984 return TRUE;
985}
986
987bool_t
988zdr_READ3res (ZDR *zdrs, READ3res *objp)
989{
990 register int32_t *buf;
991 buf = NULL;
992
993 if (!zdr_nfsstat3 (zdrs, &objp->status))
994 return FALSE;
995 switch (objp->status) {
996 case NFS3_OK:
997 if (!zdr_READ3resok (zdrs, &objp->READ3res_u.resok))
998 return FALSE;
999 break;
1000 default:
1001 if (!zdr_READ3resfail (zdrs, &objp->READ3res_u.resfail))
1002 return FALSE;
1003 break;
1004 }
1005 return TRUE;
1006}
1007
1008bool_t
1009zdr_FSINFO3args (ZDR *zdrs, FSINFO3args *objp)
1010{
1011 register int32_t *buf;
1012 buf = NULL;
1013
1014 if (!zdr_nfs_fh3 (zdrs, &objp->fsroot))
1015 return FALSE;
1016 return TRUE;
1017}
1018
1019bool_t
1020zdr_FSINFO3resok (ZDR *zdrs, FSINFO3resok *objp)
1021{
1022 register int32_t *buf;
1023 buf = NULL;
1024
1025
1026 if (zdrs->x_op == ZDR_ENCODE) {
1027 if (!zdr_post_op_attr (zdrs, &objp->obj_attributes))
1028 return FALSE;
1029 buf = ZDR_INLINE (zdrs, 7 * BYTES_PER_ZDR_UNIT);
1030 if (buf == NULL) {
1031 if (!zdr_u_int (zdrs, &objp->rtmax))
1032 return FALSE;
1033 if (!zdr_u_int (zdrs, &objp->rtpref))
1034 return FALSE;
1035 if (!zdr_u_int (zdrs, &objp->rtmult))
1036 return FALSE;
1037 if (!zdr_u_int (zdrs, &objp->wtmax))
1038 return FALSE;
1039 if (!zdr_u_int (zdrs, &objp->wtpref))
1040 return FALSE;
1041 if (!zdr_u_int (zdrs, &objp->wtmult))
1042 return FALSE;
1043 if (!zdr_u_int (zdrs, &objp->dtpref))
1044 return FALSE;
1045
1046 } else {
1047 IZDR_PUT_U_LONG(buf, objp->rtmax);
1048 IZDR_PUT_U_LONG(buf, objp->rtpref);
1049 IZDR_PUT_U_LONG(buf, objp->rtmult);
1050 IZDR_PUT_U_LONG(buf, objp->wtmax);
1051 IZDR_PUT_U_LONG(buf, objp->wtpref);
1052 IZDR_PUT_U_LONG(buf, objp->wtmult);
1053 IZDR_PUT_U_LONG(buf, objp->dtpref);
1054 }
1055 if (!zdr_size3 (zdrs, &objp->maxfilesize))
1056 return FALSE;
1057 if (!zdr_nfstime3 (zdrs, &objp->time_delta))
1058 return FALSE;
1059 if (!zdr_u_int (zdrs, &objp->properties))
1060 return FALSE;
1061 return TRUE;
1062 } else if (zdrs->x_op == ZDR_DECODE) {
1063 if (!zdr_post_op_attr (zdrs, &objp->obj_attributes))
1064 return FALSE;
1065 buf = ZDR_INLINE (zdrs, 7 * BYTES_PER_ZDR_UNIT);
1066 if (buf == NULL) {
1067 if (!zdr_u_int (zdrs, &objp->rtmax))
1068 return FALSE;
1069 if (!zdr_u_int (zdrs, &objp->rtpref))
1070 return FALSE;
1071 if (!zdr_u_int (zdrs, &objp->rtmult))
1072 return FALSE;
1073 if (!zdr_u_int (zdrs, &objp->wtmax))
1074 return FALSE;
1075 if (!zdr_u_int (zdrs, &objp->wtpref))
1076 return FALSE;
1077 if (!zdr_u_int (zdrs, &objp->wtmult))
1078 return FALSE;
1079 if (!zdr_u_int (zdrs, &objp->dtpref))
1080 return FALSE;
1081
1082 } else {
1083 objp->rtmax = IZDR_GET_U_LONG(buf);
1084 objp->rtpref = IZDR_GET_U_LONG(buf);
1085 objp->rtmult = IZDR_GET_U_LONG(buf);
1086 objp->wtmax = IZDR_GET_U_LONG(buf);
1087 objp->wtpref = IZDR_GET_U_LONG(buf);
1088 objp->wtmult = IZDR_GET_U_LONG(buf);
1089 objp->dtpref = IZDR_GET_U_LONG(buf);
1090 }
1091 if (!zdr_size3 (zdrs, &objp->maxfilesize))
1092 return FALSE;
1093 if (!zdr_nfstime3 (zdrs, &objp->time_delta))
1094 return FALSE;
1095 if (!zdr_u_int (zdrs, &objp->properties))
1096 return FALSE;
1097 return TRUE;
1098 }
1099
1100 if (!zdr_post_op_attr (zdrs, &objp->obj_attributes))
1101 return FALSE;
1102 if (!zdr_u_int (zdrs, &objp->rtmax))
1103 return FALSE;
1104 if (!zdr_u_int (zdrs, &objp->rtpref))
1105 return FALSE;
1106 if (!zdr_u_int (zdrs, &objp->rtmult))
1107 return FALSE;
1108 if (!zdr_u_int (zdrs, &objp->wtmax))
1109 return FALSE;
1110 if (!zdr_u_int (zdrs, &objp->wtpref))
1111 return FALSE;
1112 if (!zdr_u_int (zdrs, &objp->wtmult))
1113 return FALSE;
1114 if (!zdr_u_int (zdrs, &objp->dtpref))
1115 return FALSE;
1116 if (!zdr_size3 (zdrs, &objp->maxfilesize))
1117 return FALSE;
1118 if (!zdr_nfstime3 (zdrs, &objp->time_delta))
1119 return FALSE;
1120 if (!zdr_u_int (zdrs, &objp->properties))
1121 return FALSE;
1122 return TRUE;
1123}
1124
1125bool_t
1126zdr_FSINFO3resfail (ZDR *zdrs, FSINFO3resfail *objp)
1127{
1128 register int32_t *buf;
1129 buf = NULL;
1130
1131 if (!zdr_post_op_attr (zdrs, &objp->obj_attributes))
1132 return FALSE;
1133 return TRUE;
1134}
1135
1136bool_t
1137zdr_FSINFO3res (ZDR *zdrs, FSINFO3res *objp)
1138{
1139 register int32_t *buf;
1140 buf = NULL;
1141
1142 if (!zdr_nfsstat3 (zdrs, &objp->status))
1143 return FALSE;
1144 switch (objp->status) {
1145 case NFS3_OK:
1146 if (!zdr_FSINFO3resok (zdrs, &objp->FSINFO3res_u.resok))
1147 return FALSE;
1148 break;
1149 default:
1150 if (!zdr_FSINFO3resfail (zdrs, &objp->FSINFO3res_u.resfail))
1151 return FALSE;
1152 break;
1153 }
1154 return TRUE;
1155}
1156
1157bool_t
1158zdr_FSSTAT3args (ZDR *zdrs, FSSTAT3args *objp)
1159{
1160 register int32_t *buf;
1161 buf = NULL;
1162
1163 if (!zdr_nfs_fh3 (zdrs, &objp->fsroot))
1164 return FALSE;
1165 return TRUE;
1166}
1167
1168bool_t
1169zdr_FSSTAT3resok (ZDR *zdrs, FSSTAT3resok *objp)
1170{
1171 register int32_t *buf;
1172 buf = NULL;
1173
1174 if (!zdr_post_op_attr (zdrs, &objp->obj_attributes))
1175 return FALSE;
1176 if (!zdr_size3 (zdrs, &objp->tbytes))
1177 return FALSE;
1178 if (!zdr_size3 (zdrs, &objp->fbytes))
1179 return FALSE;
1180 if (!zdr_size3 (zdrs, &objp->abytes))
1181 return FALSE;
1182 if (!zdr_size3 (zdrs, &objp->tfiles))
1183 return FALSE;
1184 if (!zdr_size3 (zdrs, &objp->ffiles))
1185 return FALSE;
1186 if (!zdr_size3 (zdrs, &objp->afiles))
1187 return FALSE;
1188 if (!zdr_u_int (zdrs, &objp->invarsec))
1189 return FALSE;
1190 return TRUE;
1191}
1192
1193bool_t
1194zdr_FSSTAT3resfail (ZDR *zdrs, FSSTAT3resfail *objp)
1195{
1196 register int32_t *buf;
1197 buf = NULL;
1198
1199 if (!zdr_post_op_attr (zdrs, &objp->obj_attributes))
1200 return FALSE;
1201 return TRUE;
1202}
1203
1204bool_t
1205zdr_FSSTAT3res (ZDR *zdrs, FSSTAT3res *objp)
1206{
1207 register int32_t *buf;
1208 buf = NULL;
1209
1210 if (!zdr_nfsstat3 (zdrs, &objp->status))
1211 return FALSE;
1212 switch (objp->status) {
1213 case NFS3_OK:
1214 if (!zdr_FSSTAT3resok (zdrs, &objp->FSSTAT3res_u.resok))
1215 return FALSE;
1216 break;
1217 default:
1218 if (!zdr_FSSTAT3resfail (zdrs, &objp->FSSTAT3res_u.resfail))
1219 return FALSE;
1220 break;
1221 }
1222 return TRUE;
1223}
1224
1225bool_t
1226zdr_PATHCONF3args (ZDR *zdrs, PATHCONF3args *objp)
1227{
1228 register int32_t *buf;
1229 buf = NULL;
1230
1231 if (!zdr_nfs_fh3 (zdrs, &objp->object))
1232 return FALSE;
1233 return TRUE;
1234}
1235
1236bool_t
1237zdr_PATHCONF3resok (ZDR *zdrs, PATHCONF3resok *objp)
1238{
1239 register int32_t *buf;
1240 buf = NULL;
1241
1242
1243 if (zdrs->x_op == ZDR_ENCODE) {
1244 if (!zdr_post_op_attr (zdrs, &objp->obj_attributes))
1245 return FALSE;
1246 buf = ZDR_INLINE (zdrs, 6 * BYTES_PER_ZDR_UNIT);
1247 if (buf == NULL) {
1248 if (!zdr_u_int (zdrs, &objp->linkmax))
1249 return FALSE;
1250 if (!zdr_u_int (zdrs, &objp->name_max))
1251 return FALSE;
1252 if (!zdr_bool (zdrs, &objp->no_trunc))
1253 return FALSE;
1254 if (!zdr_bool (zdrs, &objp->chown_restricted))
1255 return FALSE;
1256 if (!zdr_bool (zdrs, &objp->case_insensitive))
1257 return FALSE;
1258 if (!zdr_bool (zdrs, &objp->case_preserving))
1259 return FALSE;
1260 } else {
1261 IZDR_PUT_U_LONG(buf, objp->linkmax);
1262 IZDR_PUT_U_LONG(buf, objp->name_max);
1263 IZDR_PUT_BOOL(buf, objp->no_trunc);
1264 IZDR_PUT_BOOL(buf, objp->chown_restricted);
1265 IZDR_PUT_BOOL(buf, objp->case_insensitive);
1266 IZDR_PUT_BOOL(buf, objp->case_preserving);
1267 }
1268 return TRUE;
1269 } else if (zdrs->x_op == ZDR_DECODE) {
1270 if (!zdr_post_op_attr (zdrs, &objp->obj_attributes))
1271 return FALSE;
1272 buf = ZDR_INLINE (zdrs, 6 * BYTES_PER_ZDR_UNIT);
1273 if (buf == NULL) {
1274 if (!zdr_u_int (zdrs, &objp->linkmax))
1275 return FALSE;
1276 if (!zdr_u_int (zdrs, &objp->name_max))
1277 return FALSE;
1278 if (!zdr_bool (zdrs, &objp->no_trunc))
1279 return FALSE;
1280 if (!zdr_bool (zdrs, &objp->chown_restricted))
1281 return FALSE;
1282 if (!zdr_bool (zdrs, &objp->case_insensitive))
1283 return FALSE;
1284 if (!zdr_bool (zdrs, &objp->case_preserving))
1285 return FALSE;
1286 } else {
1287 objp->linkmax = IZDR_GET_U_LONG(buf);
1288 objp->name_max = IZDR_GET_U_LONG(buf);
1289 objp->no_trunc = IZDR_GET_BOOL(buf);
1290 objp->chown_restricted = IZDR_GET_BOOL(buf);
1291 objp->case_insensitive = IZDR_GET_BOOL(buf);
1292 objp->case_preserving = IZDR_GET_BOOL(buf);
1293 }
1294 return TRUE;
1295 }
1296
1297 if (!zdr_post_op_attr (zdrs, &objp->obj_attributes))
1298 return FALSE;
1299 if (!zdr_u_int (zdrs, &objp->linkmax))
1300 return FALSE;
1301 if (!zdr_u_int (zdrs, &objp->name_max))
1302 return FALSE;
1303 if (!zdr_bool (zdrs, &objp->no_trunc))
1304 return FALSE;
1305 if (!zdr_bool (zdrs, &objp->chown_restricted))
1306 return FALSE;
1307 if (!zdr_bool (zdrs, &objp->case_insensitive))
1308 return FALSE;
1309 if (!zdr_bool (zdrs, &objp->case_preserving))
1310 return FALSE;
1311 return TRUE;
1312}
1313
1314bool_t
1315zdr_PATHCONF3resfail (ZDR *zdrs, PATHCONF3resfail *objp)
1316{
1317 register int32_t *buf;
1318 buf = NULL;
1319
1320 if (!zdr_post_op_attr (zdrs, &objp->obj_attributes))
1321 return FALSE;
1322 return TRUE;
1323}
1324
1325bool_t
1326zdr_PATHCONF3res (ZDR *zdrs, PATHCONF3res *objp)
1327{
1328 register int32_t *buf;
1329 buf = NULL;
1330
1331 if (!zdr_nfsstat3 (zdrs, &objp->status))
1332 return FALSE;
1333 switch (objp->status) {
1334 case NFS3_OK:
1335 if (!zdr_PATHCONF3resok (zdrs, &objp->PATHCONF3res_u.resok))
1336 return FALSE;
1337 break;
1338 default:
1339 if (!zdr_PATHCONF3resfail (zdrs, &objp->PATHCONF3res_u.resfail))
1340 return FALSE;
1341 break;
1342 }
1343 return TRUE;
1344}
1345
1346bool_t
1347zdr_nfspath3 (ZDR *zdrs, nfspath3 *objp)
1348{
1349 register int32_t *buf;
1350 buf = NULL;
1351
1352 if (!zdr_string (zdrs, objp, ~0))
1353 return FALSE;
1354 return TRUE;
1355}
1356
1357bool_t
1358zdr_symlinkdata3 (ZDR *zdrs, symlinkdata3 *objp)
1359{
1360 register int32_t *buf;
1361 buf = NULL;
1362
1363 if (!zdr_sattr3 (zdrs, &objp->symlink_attributes))
1364 return FALSE;
1365 if (!zdr_nfspath3 (zdrs, &objp->symlink_data))
1366 return FALSE;
1367 return TRUE;
1368}
1369
1370bool_t
1371zdr_SYMLINK3args (ZDR *zdrs, SYMLINK3args *objp)
1372{
1373 register int32_t *buf;
1374 buf = NULL;
1375
1376 if (!zdr_diropargs3 (zdrs, &objp->where))
1377 return FALSE;
1378 if (!zdr_symlinkdata3 (zdrs, &objp->symlink))
1379 return FALSE;
1380 return TRUE;
1381}
1382
1383bool_t
1384zdr_SYMLINK3resok (ZDR *zdrs, SYMLINK3resok *objp)
1385{
1386 register int32_t *buf;
1387 buf = NULL;
1388
1389 if (!zdr_post_op_fh3 (zdrs, &objp->obj))
1390 return FALSE;
1391 if (!zdr_post_op_attr (zdrs, &objp->obj_attributes))
1392 return FALSE;
1393 if (!zdr_wcc_data (zdrs, &objp->dir_wcc))
1394 return FALSE;
1395 return TRUE;
1396}
1397
1398bool_t
1399zdr_SYMLINK3resfail (ZDR *zdrs, SYMLINK3resfail *objp)
1400{
1401 register int32_t *buf;
1402 buf = NULL;
1403
1404 if (!zdr_wcc_data (zdrs, &objp->dir_wcc))
1405 return FALSE;
1406 return TRUE;
1407}
1408
1409bool_t
1410zdr_SYMLINK3res (ZDR *zdrs, SYMLINK3res *objp)
1411{
1412 register int32_t *buf;
1413 buf = NULL;
1414
1415 if (!zdr_nfsstat3 (zdrs, &objp->status))
1416 return FALSE;
1417 switch (objp->status) {
1418 case NFS3_OK:
1419 if (!zdr_SYMLINK3resok (zdrs, &objp->SYMLINK3res_u.resok))
1420 return FALSE;
1421 break;
1422 default:
1423 if (!zdr_SYMLINK3resfail (zdrs, &objp->SYMLINK3res_u.resfail))
1424 return FALSE;
1425 break;
1426 }
1427 return TRUE;
1428}
1429
1430bool_t
1431zdr_READLINK3args (ZDR *zdrs, READLINK3args *objp)
1432{
1433 register int32_t *buf;
1434 buf = NULL;
1435
1436 if (!zdr_nfs_fh3 (zdrs, &objp->symlink))
1437 return FALSE;
1438 return TRUE;
1439}
1440
1441bool_t
1442zdr_READLINK3resok (ZDR *zdrs, READLINK3resok *objp)
1443{
1444 register int32_t *buf;
1445 buf = NULL;
1446
1447 if (!zdr_post_op_attr (zdrs, &objp->symlink_attributes))
1448 return FALSE;
1449 if (!zdr_nfspath3 (zdrs, &objp->data))
1450 return FALSE;
1451 return TRUE;
1452}
1453
1454bool_t
1455zdr_READLINK3resfail (ZDR *zdrs, READLINK3resfail *objp)
1456{
1457 register int32_t *buf;
1458 buf = NULL;
1459
1460 if (!zdr_post_op_attr (zdrs, &objp->symlink_attributes))
1461 return FALSE;
1462 return TRUE;
1463}
1464
1465bool_t
1466zdr_READLINK3res (ZDR *zdrs, READLINK3res *objp)
1467{
1468 register int32_t *buf;
1469 buf = NULL;
1470
1471 if (!zdr_nfsstat3 (zdrs, &objp->status))
1472 return FALSE;
1473 switch (objp->status) {
1474 case NFS3_OK:
1475 if (!zdr_READLINK3resok (zdrs, &objp->READLINK3res_u.resok))
1476 return FALSE;
1477 break;
1478 default:
1479 if (!zdr_READLINK3resfail (zdrs, &objp->READLINK3res_u.resfail))
1480 return FALSE;
1481 break;
1482 }
1483 return TRUE;
1484}
1485
1486bool_t
1487zdr_devicedata3 (ZDR *zdrs, devicedata3 *objp)
1488{
1489 register int32_t *buf;
1490 buf = NULL;
1491
1492 if (!zdr_sattr3 (zdrs, &objp->dev_attributes))
1493 return FALSE;
1494 if (!zdr_specdata3 (zdrs, &objp->spec))
1495 return FALSE;
1496 return TRUE;
1497}
1498
1499bool_t
1500zdr_mknoddata3 (ZDR *zdrs, mknoddata3 *objp)
1501{
1502 register int32_t *buf;
1503 buf = NULL;
1504
1505 if (!zdr_ftype3 (zdrs, &objp->type))
1506 return FALSE;
1507 switch (objp->type) {
1508 case NF3CHR:
1509 if (!zdr_devicedata3 (zdrs, &objp->mknoddata3_u.chr_device))
1510 return FALSE;
1511 break;
1512 case NF3BLK:
1513 if (!zdr_devicedata3 (zdrs, &objp->mknoddata3_u.blk_device))
1514 return FALSE;
1515 break;
1516 case NF3SOCK:
1517 if (!zdr_sattr3 (zdrs, &objp->mknoddata3_u.sock_attributes))
1518 return FALSE;
1519 break;
1520 case NF3FIFO:
1521 if (!zdr_sattr3 (zdrs, &objp->mknoddata3_u.pipe_attributes))
1522 return FALSE;
1523 break;
1524 default:
1525 break;
1526 }
1527 return TRUE;
1528}
1529
1530bool_t
1531zdr_MKNOD3args (ZDR *zdrs, MKNOD3args *objp)
1532{
1533 register int32_t *buf;
1534 buf = NULL;
1535
1536 if (!zdr_diropargs3 (zdrs, &objp->where))
1537 return FALSE;
1538 if (!zdr_mknoddata3 (zdrs, &objp->what))
1539 return FALSE;
1540 return TRUE;
1541}
1542
1543bool_t
1544zdr_MKNOD3resok (ZDR *zdrs, MKNOD3resok *objp)
1545{
1546 register int32_t *buf;
1547 buf = NULL;
1548
1549 if (!zdr_post_op_fh3 (zdrs, &objp->obj))
1550 return FALSE;
1551 if (!zdr_post_op_attr (zdrs, &objp->obj_attributes))
1552 return FALSE;
1553 if (!zdr_wcc_data (zdrs, &objp->dir_wcc))
1554 return FALSE;
1555 return TRUE;
1556}
1557
1558bool_t
1559zdr_MKNOD3resfail (ZDR *zdrs, MKNOD3resfail *objp)
1560{
1561 register int32_t *buf;
1562 buf = NULL;
1563
1564 if (!zdr_wcc_data (zdrs, &objp->dir_wcc))
1565 return FALSE;
1566 return TRUE;
1567}
1568
1569bool_t
1570zdr_MKNOD3res (ZDR *zdrs, MKNOD3res *objp)
1571{
1572 register int32_t *buf;
1573 buf = NULL;
1574
1575 if (!zdr_nfsstat3 (zdrs, &objp->status))
1576 return FALSE;
1577 switch (objp->status) {
1578 case NFS3_OK:
1579 if (!zdr_MKNOD3resok (zdrs, &objp->MKNOD3res_u.resok))
1580 return FALSE;
1581 break;
1582 default:
1583 if (!zdr_MKNOD3resfail (zdrs, &objp->MKNOD3res_u.resfail))
1584 return FALSE;
1585 break;
1586 }
1587 return TRUE;
1588}
1589
1590bool_t
1591zdr_MKDIR3args (ZDR *zdrs, MKDIR3args *objp)
1592{
1593 register int32_t *buf;
1594 buf = NULL;
1595
1596 if (!zdr_diropargs3 (zdrs, &objp->where))
1597 return FALSE;
1598 if (!zdr_sattr3 (zdrs, &objp->attributes))
1599 return FALSE;
1600 return TRUE;
1601}
1602
1603bool_t
1604zdr_MKDIR3resok (ZDR *zdrs, MKDIR3resok *objp)
1605{
1606 register int32_t *buf;
1607 buf = NULL;
1608
1609 if (!zdr_post_op_fh3 (zdrs, &objp->obj))
1610 return FALSE;
1611 if (!zdr_post_op_attr (zdrs, &objp->obj_attributes))
1612 return FALSE;
1613 if (!zdr_wcc_data (zdrs, &objp->dir_wcc))
1614 return FALSE;
1615 return TRUE;
1616}
1617
1618bool_t
1619zdr_MKDIR3resfail (ZDR *zdrs, MKDIR3resfail *objp)
1620{
1621 register int32_t *buf;
1622 buf = NULL;
1623
1624 if (!zdr_wcc_data (zdrs, &objp->dir_wcc))
1625 return FALSE;
1626 return TRUE;
1627}
1628
1629bool_t
1630zdr_MKDIR3res (ZDR *zdrs, MKDIR3res *objp)
1631{
1632 register int32_t *buf;
1633 buf = NULL;
1634
1635 if (!zdr_nfsstat3 (zdrs, &objp->status))
1636 return FALSE;
1637 switch (objp->status) {
1638 case NFS3_OK:
1639 if (!zdr_MKDIR3resok (zdrs, &objp->MKDIR3res_u.resok))
1640 return FALSE;
1641 break;
1642 default:
1643 if (!zdr_MKDIR3resfail (zdrs, &objp->MKDIR3res_u.resfail))
1644 return FALSE;
1645 break;
1646 }
1647 return TRUE;
1648}
1649
1650bool_t
1651zdr_RMDIR3args (ZDR *zdrs, RMDIR3args *objp)
1652{
1653 register int32_t *buf;
1654 buf = NULL;
1655
1656 if (!zdr_diropargs3 (zdrs, &objp->object))
1657 return FALSE;
1658 return TRUE;
1659}
1660
1661bool_t
1662zdr_RMDIR3resok (ZDR *zdrs, RMDIR3resok *objp)
1663{
1664 register int32_t *buf;
1665 buf = NULL;
1666
1667 if (!zdr_wcc_data (zdrs, &objp->dir_wcc))
1668 return FALSE;
1669 return TRUE;
1670}
1671
1672bool_t
1673zdr_RMDIR3resfail (ZDR *zdrs, RMDIR3resfail *objp)
1674{
1675 register int32_t *buf;
1676 buf = NULL;
1677
1678 if (!zdr_wcc_data (zdrs, &objp->dir_wcc))
1679 return FALSE;
1680 return TRUE;
1681}
1682
1683bool_t
1684zdr_RMDIR3res (ZDR *zdrs, RMDIR3res *objp)
1685{
1686 register int32_t *buf;
1687 buf = NULL;
1688
1689 if (!zdr_nfsstat3 (zdrs, &objp->status))
1690 return FALSE;
1691 switch (objp->status) {
1692 case NFS3_OK:
1693 if (!zdr_RMDIR3resok (zdrs, &objp->RMDIR3res_u.resok))
1694 return FALSE;
1695 break;
1696 default:
1697 if (!zdr_RMDIR3resfail (zdrs, &objp->RMDIR3res_u.resfail))
1698 return FALSE;
1699 break;
1700 }
1701 return TRUE;
1702}
1703
1704bool_t
1705zdr_RENAME3args (ZDR *zdrs, RENAME3args *objp)
1706{
1707 register int32_t *buf;
1708 buf = NULL;
1709
1710 if (!zdr_diropargs3 (zdrs, &objp->from))
1711 return FALSE;
1712 if (!zdr_diropargs3 (zdrs, &objp->to))
1713 return FALSE;
1714 return TRUE;
1715}
1716
1717bool_t
1718zdr_RENAME3resok (ZDR *zdrs, RENAME3resok *objp)
1719{
1720 register int32_t *buf;
1721 buf = NULL;
1722
1723 if (!zdr_wcc_data (zdrs, &objp->fromdir_wcc))
1724 return FALSE;
1725 if (!zdr_wcc_data (zdrs, &objp->todir_wcc))
1726 return FALSE;
1727 return TRUE;
1728}
1729
1730bool_t
1731zdr_RENAME3resfail (ZDR *zdrs, RENAME3resfail *objp)
1732{
1733 register int32_t *buf;
1734 buf = NULL;
1735
1736 if (!zdr_wcc_data (zdrs, &objp->fromdir_wcc))
1737 return FALSE;
1738 if (!zdr_wcc_data (zdrs, &objp->todir_wcc))
1739 return FALSE;
1740 return TRUE;
1741}
1742
1743bool_t
1744zdr_RENAME3res (ZDR *zdrs, RENAME3res *objp)
1745{
1746 register int32_t *buf;
1747 buf = NULL;
1748
1749 if (!zdr_nfsstat3 (zdrs, &objp->status))
1750 return FALSE;
1751 switch (objp->status) {
1752 case NFS3_OK:
1753 if (!zdr_RENAME3resok (zdrs, &objp->RENAME3res_u.resok))
1754 return FALSE;
1755 break;
1756 default:
1757 if (!zdr_RENAME3resfail (zdrs, &objp->RENAME3res_u.resfail))
1758 return FALSE;
1759 break;
1760 }
1761 return TRUE;
1762}
1763
1764bool_t
1765zdr_READDIRPLUS3args (ZDR *zdrs, READDIRPLUS3args *objp)
1766{
1767 register int32_t *buf;
1768 buf = NULL;
1769
1770 if (!zdr_nfs_fh3 (zdrs, &objp->dir))
1771 return FALSE;
1772 if (!zdr_cookie3 (zdrs, &objp->cookie))
1773 return FALSE;
1774 if (!zdr_cookieverf3 (zdrs, objp->cookieverf))
1775 return FALSE;
1776 if (!zdr_count3 (zdrs, &objp->dircount))
1777 return FALSE;
1778 if (!zdr_count3 (zdrs, &objp->maxcount))
1779 return FALSE;
1780 return TRUE;
1781}
1782
1783bool_t
1784zdr_entryplus3 (ZDR *zdrs, entryplus3 *objp)
1785{
1786 register int32_t *buf;
1787 buf = NULL;
1788
1789 if (!zdr_fileid3 (zdrs, &objp->fileid))
1790 return FALSE;
1791 if (!zdr_filename3 (zdrs, &objp->name))
1792 return FALSE;
1793 if (!zdr_cookie3 (zdrs, &objp->cookie))
1794 return FALSE;
1795 if (!zdr_post_op_attr (zdrs, &objp->name_attributes))
1796 return FALSE;
1797 if (!zdr_post_op_fh3 (zdrs, &objp->name_handle))
1798 return FALSE;
1799 if (!zdr_pointer (zdrs, (char **)&objp->nextentry, sizeof (entryplus3), (zdrproc_t) zdr_entryplus3))
1800 return FALSE;
1801 return TRUE;
1802}
1803
1804bool_t
1805zdr_dirlistplus3 (ZDR *zdrs, dirlistplus3 *objp)
1806{
1807 register int32_t *buf;
1808 buf = NULL;
1809
1810 if (!zdr_pointer (zdrs, (char **)&objp->entries, sizeof (entryplus3), (zdrproc_t) zdr_entryplus3))
1811 return FALSE;
1812 if (!zdr_bool (zdrs, &objp->eof))
1813 return FALSE;
1814 return TRUE;
1815}
1816
1817bool_t
1818zdr_READDIRPLUS3resok (ZDR *zdrs, READDIRPLUS3resok *objp)
1819{
1820 register int32_t *buf;
1821 buf = NULL;
1822
1823 if (!zdr_post_op_attr (zdrs, &objp->dir_attributes))
1824 return FALSE;
1825 if (!zdr_cookieverf3 (zdrs, objp->cookieverf))
1826 return FALSE;
1827 if (!zdr_dirlistplus3 (zdrs, &objp->reply))
1828 return FALSE;
1829 return TRUE;
1830}
1831
1832bool_t
1833zdr_READDIRPLUS3resfail (ZDR *zdrs, READDIRPLUS3resfail *objp)
1834{
1835 register int32_t *buf;
1836 buf = NULL;
1837
1838 if (!zdr_post_op_attr (zdrs, &objp->dir_attributes))
1839 return FALSE;
1840 return TRUE;
1841}
1842
1843bool_t
1844zdr_READDIRPLUS3res (ZDR *zdrs, READDIRPLUS3res *objp)
1845{
1846 register int32_t *buf;
1847 buf = NULL;
1848
1849 if (!zdr_nfsstat3 (zdrs, &objp->status))
1850 return FALSE;
1851 switch (objp->status) {
1852 case NFS3_OK:
1853 if (!zdr_READDIRPLUS3resok (zdrs, &objp->READDIRPLUS3res_u.resok))
1854 return FALSE;
1855 break;
1856 default:
1857 if (!zdr_READDIRPLUS3resfail (zdrs, &objp->READDIRPLUS3res_u.resfail))
1858 return FALSE;
1859 break;
1860 }
1861 return TRUE;
1862}
1863
1864bool_t
1865zdr_READDIR3args (ZDR *zdrs, READDIR3args *objp)
1866{
1867 register int32_t *buf;
1868 buf = NULL;
1869
1870 if (!zdr_nfs_fh3 (zdrs, &objp->dir))
1871 return FALSE;
1872 if (!zdr_cookie3 (zdrs, &objp->cookie))
1873 return FALSE;
1874 if (!zdr_cookieverf3 (zdrs, objp->cookieverf))
1875 return FALSE;
1876 if (!zdr_count3 (zdrs, &objp->count))
1877 return FALSE;
1878 return TRUE;
1879}
1880
1881bool_t
1882zdr_entry3 (ZDR *zdrs, entry3 *objp)
1883{
1884 register int32_t *buf;
1885 buf = NULL;
1886
1887 if (!zdr_fileid3 (zdrs, &objp->fileid))
1888 return FALSE;
1889 if (!zdr_filename3 (zdrs, &objp->name))
1890 return FALSE;
1891 if (!zdr_cookie3 (zdrs, &objp->cookie))
1892 return FALSE;
1893 if (!zdr_pointer (zdrs, (char **)&objp->nextentry, sizeof (entry3), (zdrproc_t) zdr_entry3))
1894 return FALSE;
1895 return TRUE;
1896}
1897
1898bool_t
1899zdr_dirlist3 (ZDR *zdrs, dirlist3 *objp)
1900{
1901 register int32_t *buf;
1902 buf = NULL;
1903
1904 if (!zdr_pointer (zdrs, (char **)&objp->entries, sizeof (entry3), (zdrproc_t) zdr_entry3))
1905 return FALSE;
1906 if (!zdr_bool (zdrs, &objp->eof))
1907 return FALSE;
1908 return TRUE;
1909}
1910
1911bool_t
1912zdr_READDIR3resok (ZDR *zdrs, READDIR3resok *objp)
1913{
1914 register int32_t *buf;
1915 buf = NULL;
1916
1917 if (!zdr_post_op_attr (zdrs, &objp->dir_attributes))
1918 return FALSE;
1919 if (!zdr_cookieverf3 (zdrs, objp->cookieverf))
1920 return FALSE;
1921 if (!zdr_dirlist3 (zdrs, &objp->reply))
1922 return FALSE;
1923 return TRUE;
1924}
1925
1926bool_t
1927zdr_READDIR3resfail (ZDR *zdrs, READDIR3resfail *objp)
1928{
1929 register int32_t *buf;
1930 buf = NULL;
1931
1932 if (!zdr_post_op_attr (zdrs, &objp->dir_attributes))
1933 return FALSE;
1934 return TRUE;
1935}
1936
1937bool_t
1938zdr_READDIR3res (ZDR *zdrs, READDIR3res *objp)
1939{
1940 register int32_t *buf;
1941 buf = NULL;
1942
1943 if (!zdr_nfsstat3 (zdrs, &objp->status))
1944 return FALSE;
1945 switch (objp->status) {
1946 case NFS3_OK:
1947 if (!zdr_READDIR3resok (zdrs, &objp->READDIR3res_u.resok))
1948 return FALSE;
1949 break;
1950 default:
1951 if (!zdr_READDIR3resfail (zdrs, &objp->READDIR3res_u.resfail))
1952 return FALSE;
1953 break;
1954 }
1955 return TRUE;
1956}
1957
1958bool_t
1959zdr_LINK3args (ZDR *zdrs, LINK3args *objp)
1960{
1961 register int32_t *buf;
1962 buf = NULL;
1963
1964 if (!zdr_nfs_fh3 (zdrs, &objp->file))
1965 return FALSE;
1966 if (!zdr_diropargs3 (zdrs, &objp->link))
1967 return FALSE;
1968 return TRUE;
1969}
1970
1971bool_t
1972zdr_LINK3resok (ZDR *zdrs, LINK3resok *objp)
1973{
1974 register int32_t *buf;
1975 buf = NULL;
1976
1977 if (!zdr_post_op_attr (zdrs, &objp->file_attributes))
1978 return FALSE;
1979 if (!zdr_wcc_data (zdrs, &objp->linkdir_wcc))
1980 return FALSE;
1981 return TRUE;
1982}
1983
1984bool_t
1985zdr_LINK3resfail (ZDR *zdrs, LINK3resfail *objp)
1986{
1987 register int32_t *buf;
1988 buf = NULL;
1989
1990 if (!zdr_post_op_attr (zdrs, &objp->file_attributes))
1991 return FALSE;
1992 if (!zdr_wcc_data (zdrs, &objp->linkdir_wcc))
1993 return FALSE;
1994 return TRUE;
1995}
1996
1997bool_t
1998zdr_LINK3res (ZDR *zdrs, LINK3res *objp)
1999{
2000 register int32_t *buf;
2001 buf = NULL;
2002
2003 if (!zdr_nfsstat3 (zdrs, &objp->status))
2004 return FALSE;
2005 switch (objp->status) {
2006 case NFS3_OK:
2007 if (!zdr_LINK3resok (zdrs, &objp->LINK3res_u.resok))
2008 return FALSE;
2009 break;
2010 default:
2011 if (!zdr_LINK3resfail (zdrs, &objp->LINK3res_u.resfail))
2012 return FALSE;
2013 break;
2014 }
2015 return TRUE;
2016}
2017
2018bool_t
2019zdr_sattrguard3 (ZDR *zdrs, sattrguard3 *objp)
2020{
2021 register int32_t *buf;
2022 buf = NULL;
2023
2024 if (!zdr_bool (zdrs, &objp->check))
2025 return FALSE;
2026 switch (objp->check) {
2027 case TRUE:
2028 if (!zdr_nfstime3 (zdrs, &objp->sattrguard3_u.obj_ctime))
2029 return FALSE;
2030 break;
2031 case FALSE:
2032 break;
2033 default:
2034 return FALSE;
2035 }
2036 return TRUE;
2037}
2038
2039bool_t
2040zdr_SETATTR3args (ZDR *zdrs, SETATTR3args *objp)
2041{
2042 register int32_t *buf;
2043 buf = NULL;
2044
2045 if (!zdr_nfs_fh3 (zdrs, &objp->object))
2046 return FALSE;
2047 if (!zdr_sattr3 (zdrs, &objp->new_attributes))
2048 return FALSE;
2049 if (!zdr_sattrguard3 (zdrs, &objp->guard))
2050 return FALSE;
2051 return TRUE;
2052}
2053
2054bool_t
2055zdr_SETATTR3resok (ZDR *zdrs, SETATTR3resok *objp)
2056{
2057 register int32_t *buf;
2058 buf = NULL;
2059
2060 if (!zdr_wcc_data (zdrs, &objp->obj_wcc))
2061 return FALSE;
2062 return TRUE;
2063}
2064
2065bool_t
2066zdr_SETATTR3resfail (ZDR *zdrs, SETATTR3resfail *objp)
2067{
2068 register int32_t *buf;
2069 buf = NULL;
2070
2071 if (!zdr_wcc_data (zdrs, &objp->obj_wcc))
2072 return FALSE;
2073 return TRUE;
2074}
2075
2076bool_t
2077zdr_SETATTR3res (ZDR *zdrs, SETATTR3res *objp)
2078{
2079 register int32_t *buf;
2080 buf = NULL;
2081
2082 if (!zdr_nfsstat3 (zdrs, &objp->status))
2083 return FALSE;
2084 switch (objp->status) {
2085 case NFS3_OK:
2086 if (!zdr_SETATTR3resok (zdrs, &objp->SETATTR3res_u.resok))
2087 return FALSE;
2088 break;
2089 default:
2090 if (!zdr_SETATTR3resfail (zdrs, &objp->SETATTR3res_u.resfail))
2091 return FALSE;
2092 break;
2093 }
2094 return TRUE;
2095}
2096
2097bool_t
2098zdr_fhandle2 (ZDR *zdrs, fhandle2 objp)
2099{
2100 register int32_t *buf;
2101 buf = NULL;
2102
2103 if (!zdr_opaque (zdrs, objp, FHSIZE2))
2104 return FALSE;
2105 return TRUE;
2106}
2107
2108bool_t
2109zdr_ftype2 (ZDR *zdrs, ftype2 *objp)
2110{
2111 register int32_t *buf;
2112 buf = NULL;
2113
2114 if (!zdr_enum (zdrs, (enum_t *) objp))
2115 return FALSE;
2116 return TRUE;
2117}
2118
2119bool_t
2120zdr_fattr2 (ZDR *zdrs, fattr2 *objp)
2121{
2122 register int32_t *buf;
2123 buf = NULL;
2124
2125
2126 if (zdrs->x_op == ZDR_ENCODE) {
2127 if (!zdr_ftype2 (zdrs, &objp->type))
2128 return FALSE;
2129 buf = ZDR_INLINE (zdrs, 10 * BYTES_PER_ZDR_UNIT);
2130 if (buf == NULL) {
2131 if (!zdr_u_int (zdrs, &objp->mode))
2132 return FALSE;
2133 if (!zdr_u_int (zdrs, &objp->nlink))
2134 return FALSE;
2135 if (!zdr_u_int (zdrs, &objp->uid))
2136 return FALSE;
2137 if (!zdr_u_int (zdrs, &objp->gid))
2138 return FALSE;
2139 if (!zdr_u_int (zdrs, &objp->size))
2140 return FALSE;
2141 if (!zdr_u_int (zdrs, &objp->blocksize))
2142 return FALSE;
2143 if (!zdr_u_int (zdrs, &objp->rdev))
2144 return FALSE;
2145 if (!zdr_u_int (zdrs, &objp->blocks))
2146 return FALSE;
2147 if (!zdr_u_int (zdrs, &objp->fsid))
2148 return FALSE;
2149 if (!zdr_u_int (zdrs, &objp->fileid))
2150 return FALSE;
2151
2152 } else {
2153 IZDR_PUT_U_LONG(buf, objp->mode);
2154 IZDR_PUT_U_LONG(buf, objp->nlink);
2155 IZDR_PUT_U_LONG(buf, objp->uid);
2156 IZDR_PUT_U_LONG(buf, objp->gid);
2157 IZDR_PUT_U_LONG(buf, objp->size);
2158 IZDR_PUT_U_LONG(buf, objp->blocksize);
2159 IZDR_PUT_U_LONG(buf, objp->rdev);
2160 IZDR_PUT_U_LONG(buf, objp->blocks);
2161 IZDR_PUT_U_LONG(buf, objp->fsid);
2162 IZDR_PUT_U_LONG(buf, objp->fileid);
2163 }
2164 if (!zdr_nfstime3 (zdrs, &objp->atime))
2165 return FALSE;
2166 if (!zdr_nfstime3 (zdrs, &objp->mtime))
2167 return FALSE;
2168 if (!zdr_nfstime3 (zdrs, &objp->ctime))
2169 return FALSE;
2170 return TRUE;
2171 } else if (zdrs->x_op == ZDR_DECODE) {
2172 if (!zdr_ftype2 (zdrs, &objp->type))
2173 return FALSE;
2174 buf = ZDR_INLINE (zdrs, 10 * BYTES_PER_ZDR_UNIT);
2175 if (buf == NULL) {
2176 if (!zdr_u_int (zdrs, &objp->mode))
2177 return FALSE;
2178 if (!zdr_u_int (zdrs, &objp->nlink))
2179 return FALSE;
2180 if (!zdr_u_int (zdrs, &objp->uid))
2181 return FALSE;
2182 if (!zdr_u_int (zdrs, &objp->gid))
2183 return FALSE;
2184 if (!zdr_u_int (zdrs, &objp->size))
2185 return FALSE;
2186 if (!zdr_u_int (zdrs, &objp->blocksize))
2187 return FALSE;
2188 if (!zdr_u_int (zdrs, &objp->rdev))
2189 return FALSE;
2190 if (!zdr_u_int (zdrs, &objp->blocks))
2191 return FALSE;
2192 if (!zdr_u_int (zdrs, &objp->fsid))
2193 return FALSE;
2194 if (!zdr_u_int (zdrs, &objp->fileid))
2195 return FALSE;
2196
2197 } else {
2198 objp->mode = IZDR_GET_U_LONG(buf);
2199 objp->nlink = IZDR_GET_U_LONG(buf);
2200 objp->uid = IZDR_GET_U_LONG(buf);
2201 objp->gid = IZDR_GET_U_LONG(buf);
2202 objp->size = IZDR_GET_U_LONG(buf);
2203 objp->blocksize = IZDR_GET_U_LONG(buf);
2204 objp->rdev = IZDR_GET_U_LONG(buf);
2205 objp->blocks = IZDR_GET_U_LONG(buf);
2206 objp->fsid = IZDR_GET_U_LONG(buf);
2207 objp->fileid = IZDR_GET_U_LONG(buf);
2208 }
2209 if (!zdr_nfstime3 (zdrs, &objp->atime))
2210 return FALSE;
2211 if (!zdr_nfstime3 (zdrs, &objp->mtime))
2212 return FALSE;
2213 if (!zdr_nfstime3 (zdrs, &objp->ctime))
2214 return FALSE;
2215 return TRUE;
2216 }
2217
2218 if (!zdr_ftype2 (zdrs, &objp->type))
2219 return FALSE;
2220 if (!zdr_u_int (zdrs, &objp->mode))
2221 return FALSE;
2222 if (!zdr_u_int (zdrs, &objp->nlink))
2223 return FALSE;
2224 if (!zdr_u_int (zdrs, &objp->uid))
2225 return FALSE;
2226 if (!zdr_u_int (zdrs, &objp->gid))
2227 return FALSE;
2228 if (!zdr_u_int (zdrs, &objp->size))
2229 return FALSE;
2230 if (!zdr_u_int (zdrs, &objp->blocksize))
2231 return FALSE;
2232 if (!zdr_u_int (zdrs, &objp->rdev))
2233 return FALSE;
2234 if (!zdr_u_int (zdrs, &objp->blocks))
2235 return FALSE;
2236 if (!zdr_u_int (zdrs, &objp->fsid))
2237 return FALSE;
2238 if (!zdr_u_int (zdrs, &objp->fileid))
2239 return FALSE;
2240 if (!zdr_nfstime3 (zdrs, &objp->atime))
2241 return FALSE;
2242 if (!zdr_nfstime3 (zdrs, &objp->mtime))
2243 return FALSE;
2244 if (!zdr_nfstime3 (zdrs, &objp->ctime))
2245 return FALSE;
2246 return TRUE;
2247}
2248
2249bool_t
2250zdr_sattr2 (ZDR *zdrs, sattr2 *objp)
2251{
2252 register int32_t *buf;
2253 buf = NULL;
2254
2255
2256 if (zdrs->x_op == ZDR_ENCODE) {
2257 buf = ZDR_INLINE (zdrs, 4 * BYTES_PER_ZDR_UNIT);
2258 if (buf == NULL) {
2259 if (!zdr_u_int (zdrs, &objp->mode))
2260 return FALSE;
2261 if (!zdr_u_int (zdrs, &objp->uid))
2262 return FALSE;
2263 if (!zdr_u_int (zdrs, &objp->gid))
2264 return FALSE;
2265 if (!zdr_u_int (zdrs, &objp->size))
2266 return FALSE;
2267
2268 } else {
2269 IZDR_PUT_U_LONG(buf, objp->mode);
2270 IZDR_PUT_U_LONG(buf, objp->uid);
2271 IZDR_PUT_U_LONG(buf, objp->gid);
2272 IZDR_PUT_U_LONG(buf, objp->size);
2273 }
2274 if (!zdr_nfstime3 (zdrs, &objp->atime))
2275 return FALSE;
2276 if (!zdr_nfstime3 (zdrs, &objp->mtime))
2277 return FALSE;
2278 return TRUE;
2279 } else if (zdrs->x_op == ZDR_DECODE) {
2280 buf = ZDR_INLINE (zdrs, 4 * BYTES_PER_ZDR_UNIT);
2281 if (buf == NULL) {
2282 if (!zdr_u_int (zdrs, &objp->mode))
2283 return FALSE;
2284 if (!zdr_u_int (zdrs, &objp->uid))
2285 return FALSE;
2286 if (!zdr_u_int (zdrs, &objp->gid))
2287 return FALSE;
2288 if (!zdr_u_int (zdrs, &objp->size))
2289 return FALSE;
2290
2291 } else {
2292 objp->mode = IZDR_GET_U_LONG(buf);
2293 objp->uid = IZDR_GET_U_LONG(buf);
2294 objp->gid = IZDR_GET_U_LONG(buf);
2295 objp->size = IZDR_GET_U_LONG(buf);
2296 }
2297 if (!zdr_nfstime3 (zdrs, &objp->atime))
2298 return FALSE;
2299 if (!zdr_nfstime3 (zdrs, &objp->mtime))
2300 return FALSE;
2301 return TRUE;
2302 }
2303
2304 if (!zdr_u_int (zdrs, &objp->mode))
2305 return FALSE;
2306 if (!zdr_u_int (zdrs, &objp->uid))
2307 return FALSE;
2308 if (!zdr_u_int (zdrs, &objp->gid))
2309 return FALSE;
2310 if (!zdr_u_int (zdrs, &objp->size))
2311 return FALSE;
2312 if (!zdr_nfstime3 (zdrs, &objp->atime))
2313 return FALSE;
2314 if (!zdr_nfstime3 (zdrs, &objp->mtime))
2315 return FALSE;
2316 return TRUE;
2317}
2318
2319bool_t
2320zdr_filename2 (ZDR *zdrs, filename2 *objp)
2321{
2322 register int32_t *buf;
2323 buf = NULL;
2324
2325 if (!zdr_string (zdrs, objp, MAXNAMLEN2))
2326 return FALSE;
2327 return TRUE;
2328}
2329
2330bool_t
2331zdr_path2 (ZDR *zdrs, path2 *objp)
2332{
2333 register int32_t *buf;
2334 buf = NULL;
2335
2336 if (!zdr_string (zdrs, objp, MAXPATHLEN2))
2337 return FALSE;
2338 return TRUE;
2339}
2340
2341bool_t
2342zdr_nfsdata2 (ZDR *zdrs, nfsdata2 *objp)
2343{
2344 register int32_t *buf;
2345 buf = NULL;
2346
2347 if (!zdr_bytes (zdrs, (char **)&objp->nfsdata2_val, (u_int *) &objp->nfsdata2_len, NFSMAXDATA2))
2348 return FALSE;
2349 return TRUE;
2350}
2351
2352bool_t
2353zdr_nfscookie2 (ZDR *zdrs, nfscookie2 objp)
2354{
2355 register int32_t *buf;
2356 buf = NULL;
2357
2358 if (!zdr_opaque (zdrs, objp, NFSCOOKIESIZE2))
2359 return FALSE;
2360 return TRUE;
2361}
2362
2363bool_t
2364zdr_entry2 (ZDR *zdrs, entry2 *objp)
2365{
2366 register int32_t *buf;
2367 buf = NULL;
2368
2369 if (!zdr_u_int (zdrs, &objp->fileid))
2370 return FALSE;
2371 if (!zdr_filename2 (zdrs, &objp->name))
2372 return FALSE;
2373 if (!zdr_nfscookie2 (zdrs, objp->cookie))
2374 return FALSE;
2375 if (!zdr_pointer (zdrs, (char **)&objp->nextentry, sizeof (entry2), (zdrproc_t) zdr_entry2))
2376 return FALSE;
2377 return TRUE;
2378}
2379
2380bool_t
2381zdr_diropargs2 (ZDR *zdrs, diropargs2 *objp)
2382{
2383 register int32_t *buf;
2384 buf = NULL;
2385
2386 if (!zdr_fhandle2 (zdrs, objp->dir))
2387 return FALSE;
2388 if (!zdr_filename2 (zdrs, &objp->name))
2389 return FALSE;
2390 return TRUE;
2391}
2392
2393bool_t
2394zdr_GETATTR2args (ZDR *zdrs, GETATTR2args *objp)
2395{
2396 register int32_t *buf;
2397 buf = NULL;
2398
2399 if (!zdr_fhandle2 (zdrs, objp->fhandle))
2400 return FALSE;
2401 return TRUE;
2402}
2403
2404bool_t
2405zdr_GETATTR2resok (ZDR *zdrs, GETATTR2resok *objp)
2406{
2407 register int32_t *buf;
2408 buf = NULL;
2409
2410 if (!zdr_fattr2 (zdrs, &objp->attributes))
2411 return FALSE;
2412 return TRUE;
2413}
2414
2415bool_t
2416zdr_GETATTR2res (ZDR *zdrs, GETATTR2res *objp)
2417{
2418 register int32_t *buf;
2419 buf = NULL;
2420
2421 if (!zdr_nfsstat3 (zdrs, &objp->status))
2422 return FALSE;
2423 switch (objp->status) {
2424 case NFS3_OK:
2425 if (!zdr_GETATTR2resok (zdrs, &objp->GETATTR2res_u.resok))
2426 return FALSE;
2427 break;
2428 default:
2429 break;
2430 }
2431 return TRUE;
2432}
2433
2434bool_t
2435zdr_SETATTR2args (ZDR *zdrs, SETATTR2args *objp)
2436{
2437 register int32_t *buf;
2438 buf = NULL;
2439
2440 if (!zdr_fhandle2 (zdrs, objp->fhandle))
2441 return FALSE;
2442 if (!zdr_sattr2 (zdrs, &objp->attributes))
2443 return FALSE;
2444 return TRUE;
2445}
2446
2447bool_t
2448zdr_SETATTR2resok (ZDR *zdrs, SETATTR2resok *objp)
2449{
2450 register int32_t *buf;
2451 buf = NULL;
2452
2453 if (!zdr_fattr2 (zdrs, &objp->attributes))
2454 return FALSE;
2455 return TRUE;
2456}
2457
2458bool_t
2459zdr_SETATTR2res (ZDR *zdrs, SETATTR2res *objp)
2460{
2461 register int32_t *buf;
2462 buf = NULL;
2463
2464 if (!zdr_nfsstat3 (zdrs, &objp->status))
2465 return FALSE;
2466 switch (objp->status) {
2467 case NFS3_OK:
2468 if (!zdr_SETATTR2resok (zdrs, &objp->SETATTR2res_u.resok))
2469 return FALSE;
2470 break;
2471 default:
2472 break;
2473 }
2474 return TRUE;
2475}
2476
2477bool_t
2478zdr_LOOKUP2args (ZDR *zdrs, LOOKUP2args *objp)
2479{
2480 register int32_t *buf;
2481 buf = NULL;
2482
2483 if (!zdr_diropargs2 (zdrs, &objp->what))
2484 return FALSE;
2485 return TRUE;
2486}
2487
2488bool_t
2489zdr_LOOKUP2resok (ZDR *zdrs, LOOKUP2resok *objp)
2490{
2491 register int32_t *buf;
2492 buf = NULL;
2493
2494 if (!zdr_fhandle2 (zdrs, objp->file))
2495 return FALSE;
2496 if (!zdr_fattr2 (zdrs, &objp->attributes))
2497 return FALSE;
2498 return TRUE;
2499}
2500
2501bool_t
2502zdr_LOOKUP2res (ZDR *zdrs, LOOKUP2res *objp)
2503{
2504 register int32_t *buf;
2505 buf = NULL;
2506
2507 if (!zdr_nfsstat3 (zdrs, &objp->status))
2508 return FALSE;
2509 switch (objp->status) {
2510 case NFS3_OK:
2511 if (!zdr_LOOKUP2resok (zdrs, &objp->LOOKUP2res_u.resok))
2512 return FALSE;
2513 break;
2514 default:
2515 break;
2516 }
2517 return TRUE;
2518}
2519
2520bool_t
2521zdr_READLINK2args (ZDR *zdrs, READLINK2args *objp)
2522{
2523 register int32_t *buf;
2524 buf = NULL;
2525
2526 if (!zdr_fhandle2 (zdrs, objp->file))
2527 return FALSE;
2528 return TRUE;
2529}
2530
2531bool_t
2532zdr_READLINK2resok (ZDR *zdrs, READLINK2resok *objp)
2533{
2534 register int32_t *buf;
2535 buf = NULL;
2536
2537 if (!zdr_path2 (zdrs, &objp->data))
2538 return FALSE;
2539 return TRUE;
2540}
2541
2542bool_t
2543zdr_READLINK2res (ZDR *zdrs, READLINK2res *objp)
2544{
2545 register int32_t *buf;
2546 buf = NULL;
2547
2548 if (!zdr_nfsstat3 (zdrs, &objp->status))
2549 return FALSE;
2550 switch (objp->status) {
2551 case NFS3_OK:
2552 if (!zdr_READLINK2resok (zdrs, &objp->READLINK2res_u.resok))
2553 return FALSE;
2554 break;
2555 default:
2556 break;
2557 }
2558 return TRUE;
2559}
2560
2561bool_t
2562zdr_READ2args (ZDR *zdrs, READ2args *objp)
2563{
2564 register int32_t *buf;
2565 buf = NULL;
2566
2567 if (!zdr_fhandle2 (zdrs, objp->file))
2568 return FALSE;
2569 if (!zdr_u_int (zdrs, &objp->offset))
2570 return FALSE;
2571 if (!zdr_u_int (zdrs, &objp->count))
2572 return FALSE;
2573 if (!zdr_u_int (zdrs, &objp->totalcount))
2574 return FALSE;
2575 return TRUE;
2576}
2577
2578bool_t
2579zdr_READ2resok (ZDR *zdrs, READ2resok *objp)
2580{
2581 register int32_t *buf;
2582 buf = NULL;
2583
2584 if (!zdr_fattr2 (zdrs, &objp->attributes))
2585 return FALSE;
2586 if (!zdr_nfsdata2 (zdrs, &objp->data))
2587 return FALSE;
2588 return TRUE;
2589}
2590
2591bool_t
2592zdr_READ2res (ZDR *zdrs, READ2res *objp)
2593{
2594 register int32_t *buf;
2595 buf = NULL;
2596
2597 if (!zdr_nfsstat3 (zdrs, &objp->status))
2598 return FALSE;
2599 switch (objp->status) {
2600 case NFS3_OK:
2601 if (!zdr_READ2resok (zdrs, &objp->READ2res_u.resok))
2602 return FALSE;
2603 break;
2604 default:
2605 break;
2606 }
2607 return TRUE;
2608}
2609
2610bool_t
2611zdr_WRITE2args (ZDR *zdrs, WRITE2args *objp)
2612{
2613 register int32_t *buf;
2614 buf = NULL;
2615
2616
2617 if (zdrs->x_op == ZDR_ENCODE) {
2618 if (!zdr_fhandle2 (zdrs, objp->file))
2619 return FALSE;
2620 buf = ZDR_INLINE (zdrs, 3 * BYTES_PER_ZDR_UNIT);
2621 if (buf == NULL) {
2622 if (!zdr_u_int (zdrs, &objp->beginoffset))
2623 return FALSE;
2624 if (!zdr_u_int (zdrs, &objp->offset))
2625 return FALSE;
2626 if (!zdr_u_int (zdrs, &objp->totalcount))
2627 return FALSE;
2628
2629 } else {
2630 IZDR_PUT_U_LONG(buf, objp->beginoffset);
2631 IZDR_PUT_U_LONG(buf, objp->offset);
2632 IZDR_PUT_U_LONG(buf, objp->totalcount);
2633 }
2634 if (!zdr_nfsdata2 (zdrs, &objp->data))
2635 return FALSE;
2636 return TRUE;
2637 } else if (zdrs->x_op == ZDR_DECODE) {
2638 if (!zdr_fhandle2 (zdrs, objp->file))
2639 return FALSE;
2640 buf = ZDR_INLINE (zdrs, 3 * BYTES_PER_ZDR_UNIT);
2641 if (buf == NULL) {
2642 if (!zdr_u_int (zdrs, &objp->beginoffset))
2643 return FALSE;
2644 if (!zdr_u_int (zdrs, &objp->offset))
2645 return FALSE;
2646 if (!zdr_u_int (zdrs, &objp->totalcount))
2647 return FALSE;
2648
2649 } else {
2650 objp->beginoffset = IZDR_GET_U_LONG(buf);
2651 objp->offset = IZDR_GET_U_LONG(buf);
2652 objp->totalcount = IZDR_GET_U_LONG(buf);
2653 }
2654 if (!zdr_nfsdata2 (zdrs, &objp->data))
2655 return FALSE;
2656 return TRUE;
2657 }
2658
2659 if (!zdr_fhandle2 (zdrs, objp->file))
2660 return FALSE;
2661 if (!zdr_u_int (zdrs, &objp->beginoffset))
2662 return FALSE;
2663 if (!zdr_u_int (zdrs, &objp->offset))
2664 return FALSE;
2665 if (!zdr_u_int (zdrs, &objp->totalcount))
2666 return FALSE;
2667 if (!zdr_nfsdata2 (zdrs, &objp->data))
2668 return FALSE;
2669 return TRUE;
2670}
2671
2672bool_t
2673zdr_WRITE2resok (ZDR *zdrs, WRITE2resok *objp)
2674{
2675 register int32_t *buf;
2676 buf = NULL;
2677
2678 if (!zdr_fattr2 (zdrs, &objp->attributes))
2679 return FALSE;
2680 return TRUE;
2681}
2682
2683bool_t
2684zdr_WRITE2res (ZDR *zdrs, WRITE2res *objp)
2685{
2686 register int32_t *buf;
2687 buf = NULL;
2688
2689 if (!zdr_nfsstat3 (zdrs, &objp->status))
2690 return FALSE;
2691 switch (objp->status) {
2692 case NFS3_OK:
2693 if (!zdr_WRITE2resok (zdrs, &objp->WRITE2res_u.resok))
2694 return FALSE;
2695 break;
2696 default:
2697 break;
2698 }
2699 return TRUE;
2700}
2701
2702bool_t
2703zdr_CREATE2args (ZDR *zdrs, CREATE2args *objp)
2704{
2705 register int32_t *buf;
2706 buf = NULL;
2707
2708 if (!zdr_diropargs2 (zdrs, &objp->where))
2709 return FALSE;
2710 if (!zdr_sattr2 (zdrs, &objp->attributes))
2711 return FALSE;
2712 return TRUE;
2713}
2714
2715bool_t
2716zdr_CREATE2resok (ZDR *zdrs, CREATE2resok *objp)
2717{
2718 register int32_t *buf;
2719 buf = NULL;
2720
2721 if (!zdr_fhandle2 (zdrs, objp->file))
2722 return FALSE;
2723 if (!zdr_fattr2 (zdrs, &objp->attributes))
2724 return FALSE;
2725 return TRUE;
2726}
2727
2728bool_t
2729zdr_CREATE2res (ZDR *zdrs, CREATE2res *objp)
2730{
2731 register int32_t *buf;
2732 buf = NULL;
2733
2734 if (!zdr_nfsstat3 (zdrs, &objp->status))
2735 return FALSE;
2736 switch (objp->status) {
2737 case NFS3_OK:
2738 if (!zdr_CREATE2resok (zdrs, &objp->CREATE2res_u.resok))
2739 return FALSE;
2740 break;
2741 default:
2742 break;
2743 }
2744 return TRUE;
2745}
2746
2747bool_t
2748zdr_REMOVE2args (ZDR *zdrs, REMOVE2args *objp)
2749{
2750 register int32_t *buf;
2751 buf = NULL;
2752
2753 if (!zdr_diropargs2 (zdrs, &objp->what))
2754 return FALSE;
2755 return TRUE;
2756}
2757
2758bool_t
2759zdr_REMOVE2res (ZDR *zdrs, REMOVE2res *objp)
2760{
2761 register int32_t *buf;
2762 buf = NULL;
2763
2764 if (!zdr_nfsstat3 (zdrs, &objp->status))
2765 return FALSE;
2766 return TRUE;
2767}
2768
2769bool_t
2770zdr_RENAME2args (ZDR *zdrs, RENAME2args *objp)
2771{
2772 register int32_t *buf;
2773 buf = NULL;
2774
2775 if (!zdr_diropargs2 (zdrs, &objp->from))
2776 return FALSE;
2777 if (!zdr_diropargs2 (zdrs, &objp->to))
2778 return FALSE;
2779 return TRUE;
2780}
2781
2782bool_t
2783zdr_RENAME2res (ZDR *zdrs, RENAME2res *objp)
2784{
2785 register int32_t *buf;
2786 buf = NULL;
2787
2788 if (!zdr_nfsstat3 (zdrs, &objp->status))
2789 return FALSE;
2790 return TRUE;
2791}
2792
2793bool_t
2794zdr_LINK2args (ZDR *zdrs, LINK2args *objp)
2795{
2796 register int32_t *buf;
2797 buf = NULL;
2798
2799 if (!zdr_fhandle2 (zdrs, objp->from))
2800 return FALSE;
2801 if (!zdr_diropargs2 (zdrs, &objp->to))
2802 return FALSE;
2803 return TRUE;
2804}
2805
2806bool_t
2807zdr_LINK2res (ZDR *zdrs, LINK2res *objp)
2808{
2809 register int32_t *buf;
2810 buf = NULL;
2811
2812 if (!zdr_nfsstat3 (zdrs, &objp->status))
2813 return FALSE;
2814 return TRUE;
2815}
2816
2817bool_t
2818zdr_SYMLINK2args (ZDR *zdrs, SYMLINK2args *objp)
2819{
2820 register int32_t *buf;
2821 buf = NULL;
2822
2823 if (!zdr_diropargs2 (zdrs, &objp->from))
2824 return FALSE;
2825 if (!zdr_path2 (zdrs, &objp->to))
2826 return FALSE;
2827 if (!zdr_sattr2 (zdrs, &objp->attributes))
2828 return FALSE;
2829 return TRUE;
2830}
2831
2832bool_t
2833zdr_SYMLINK2res (ZDR *zdrs, SYMLINK2res *objp)
2834{
2835 register int32_t *buf;
2836 buf = NULL;
2837
2838 if (!zdr_nfsstat3 (zdrs, &objp->status))
2839 return FALSE;
2840 return TRUE;
2841}
2842
2843bool_t
2844zdr_MKDIR2args (ZDR *zdrs, MKDIR2args *objp)
2845{
2846 register int32_t *buf;
2847 buf = NULL;
2848
2849 if (!zdr_diropargs2 (zdrs, &objp->where))
2850 return FALSE;
2851 if (!zdr_sattr2 (zdrs, &objp->attributes))
2852 return FALSE;
2853 return TRUE;
2854}
2855
2856bool_t
2857zdr_MKDIR2resok (ZDR *zdrs, MKDIR2resok *objp)
2858{
2859 register int32_t *buf;
2860 buf = NULL;
2861
2862 if (!zdr_fhandle2 (zdrs, objp->file))
2863 return FALSE;
2864 if (!zdr_fattr2 (zdrs, &objp->attributes))
2865 return FALSE;
2866 return TRUE;
2867}
2868
2869bool_t
2870zdr_MKDIR2res (ZDR *zdrs, MKDIR2res *objp)
2871{
2872 register int32_t *buf;
2873 buf = NULL;
2874
2875 if (!zdr_nfsstat3 (zdrs, &objp->status))
2876 return FALSE;
2877 switch (objp->status) {
2878 case NFS3_OK:
2879 if (!zdr_MKDIR2resok (zdrs, &objp->MKDIR2res_u.resok))
2880 return FALSE;
2881 break;
2882 default:
2883 break;
2884 }
2885 return TRUE;
2886}
2887
2888bool_t
2889zdr_RMDIR2args (ZDR *zdrs, RMDIR2args *objp)
2890{
2891 register int32_t *buf;
2892 buf = NULL;
2893
2894 if (!zdr_diropargs2 (zdrs, &objp->what))
2895 return FALSE;
2896 return TRUE;
2897}
2898
2899bool_t
2900zdr_RMDIR2res (ZDR *zdrs, RMDIR2res *objp)
2901{
2902 register int32_t *buf;
2903 buf = NULL;
2904
2905 if (!zdr_nfsstat3 (zdrs, &objp->status))
2906 return FALSE;
2907 return TRUE;
2908}
2909
2910bool_t
2911zdr_READDIR2args (ZDR *zdrs, READDIR2args *objp)
2912{
2913 register int32_t *buf;
2914 buf = NULL;
2915
2916 if (!zdr_fhandle2 (zdrs, objp->dir))
2917 return FALSE;
2918 if (!zdr_nfscookie2 (zdrs, objp->cookie))
2919 return FALSE;
2920 if (!zdr_u_int (zdrs, &objp->count))
2921 return FALSE;
2922 return TRUE;
2923}
2924
2925bool_t
2926zdr_READDIR2resok (ZDR *zdrs, READDIR2resok *objp)
2927{
2928 register int32_t *buf;
2929 buf = NULL;
2930
2931 if (!zdr_pointer (zdrs, (char **)&objp->entries, sizeof (entry2), (zdrproc_t) zdr_entry2))
2932 return FALSE;
2933 if (!zdr_bool (zdrs, &objp->eof))
2934 return FALSE;
2935 return TRUE;
2936}
2937
2938bool_t
2939zdr_READDIR2res (ZDR *zdrs, READDIR2res *objp)
2940{
2941 register int32_t *buf;
2942 buf = NULL;
2943
2944 if (!zdr_nfsstat3 (zdrs, &objp->status))
2945 return FALSE;
2946 switch (objp->status) {
2947 case NFS3_OK:
2948 if (!zdr_READDIR2resok (zdrs, &objp->READDIR2res_u.resok))
2949 return FALSE;
2950 break;
2951 default:
2952 break;
2953 }
2954 return TRUE;
2955}
2956
2957bool_t
2958zdr_STATFS2args (ZDR *zdrs, STATFS2args *objp)
2959{
2960 register int32_t *buf;
2961 buf = NULL;
2962
2963 if (!zdr_fhandle2 (zdrs, objp->dir))
2964 return FALSE;
2965 return TRUE;
2966}
2967
2968bool_t
2969zdr_STATFS2resok (ZDR *zdrs, STATFS2resok *objp)
2970{
2971 register int32_t *buf;
2972 buf = NULL;
2973
2974
2975 if (zdrs->x_op == ZDR_ENCODE) {
2976 buf = ZDR_INLINE (zdrs, 5 * BYTES_PER_ZDR_UNIT);
2977 if (buf == NULL) {
2978 if (!zdr_u_int (zdrs, &objp->tsize))
2979 return FALSE;
2980 if (!zdr_u_int (zdrs, &objp->bsize))
2981 return FALSE;
2982 if (!zdr_u_int (zdrs, &objp->blocks))
2983 return FALSE;
2984 if (!zdr_u_int (zdrs, &objp->bfree))
2985 return FALSE;
2986 if (!zdr_u_int (zdrs, &objp->bavail))
2987 return FALSE;
2988 } else {
2989 IZDR_PUT_U_LONG(buf, objp->tsize);
2990 IZDR_PUT_U_LONG(buf, objp->bsize);
2991 IZDR_PUT_U_LONG(buf, objp->blocks);
2992 IZDR_PUT_U_LONG(buf, objp->bfree);
2993 IZDR_PUT_U_LONG(buf, objp->bavail);
2994 }
2995 return TRUE;
2996 } else if (zdrs->x_op == ZDR_DECODE) {
2997 buf = ZDR_INLINE (zdrs, 5 * BYTES_PER_ZDR_UNIT);
2998 if (buf == NULL) {
2999 if (!zdr_u_int (zdrs, &objp->tsize))
3000 return FALSE;
3001 if (!zdr_u_int (zdrs, &objp->bsize))
3002 return FALSE;
3003 if (!zdr_u_int (zdrs, &objp->blocks))
3004 return FALSE;
3005 if (!zdr_u_int (zdrs, &objp->bfree))
3006 return FALSE;
3007 if (!zdr_u_int (zdrs, &objp->bavail))
3008 return FALSE;
3009 } else {
3010 objp->tsize = IZDR_GET_U_LONG(buf);
3011 objp->bsize = IZDR_GET_U_LONG(buf);
3012 objp->blocks = IZDR_GET_U_LONG(buf);
3013 objp->bfree = IZDR_GET_U_LONG(buf);
3014 objp->bavail = IZDR_GET_U_LONG(buf);
3015 }
3016 return TRUE;
3017 }
3018
3019 if (!zdr_u_int (zdrs, &objp->tsize))
3020 return FALSE;
3021 if (!zdr_u_int (zdrs, &objp->bsize))
3022 return FALSE;
3023 if (!zdr_u_int (zdrs, &objp->blocks))
3024 return FALSE;
3025 if (!zdr_u_int (zdrs, &objp->bfree))
3026 return FALSE;
3027 if (!zdr_u_int (zdrs, &objp->bavail))
3028 return FALSE;
3029 return TRUE;
3030}
3031
3032bool_t
3033zdr_STATFS2res (ZDR *zdrs, STATFS2res *objp)
3034{
3035 register int32_t *buf;
3036 buf = NULL;
3037
3038 if (!zdr_nfsstat3 (zdrs, &objp->status))
3039 return FALSE;
3040 switch (objp->status) {
3041 case NFS3_OK:
3042 if (!zdr_STATFS2resok (zdrs, &objp->STATFS2res_u.resok))
3043 return FALSE;
3044 break;
3045 default:
3046 break;
3047 }
3048 return TRUE;
3049}
3050
3051bool_t
3052zdr_nfsacl_type (ZDR *zdrs, nfsacl_type *objp)
3053{
3054 register int32_t *buf;
3055 buf = NULL;
3056
3057 if (!zdr_enum (zdrs, (enum_t *) objp))
3058 return FALSE;
3059 return TRUE;
3060}
3061
3062bool_t
3063zdr_nfsacl_ace (ZDR *zdrs, nfsacl_ace *objp)
3064{
3065 register int32_t *buf;
3066 buf = NULL;
3067
3068 if (!zdr_nfsacl_type (zdrs, &objp->type))
3069 return FALSE;
3070 if (!zdr_u_int (zdrs, &objp->id))
3071 return FALSE;
3072 if (!zdr_u_int (zdrs, &objp->perm))
3073 return FALSE;
3074 return TRUE;
3075}
3076
3077bool_t
3078zdr_GETACL3args (ZDR *zdrs, GETACL3args *objp)
3079{
3080 register int32_t *buf;
3081 buf = NULL;
3082
3083 if (!zdr_nfs_fh3 (zdrs, &objp->dir))
3084 return FALSE;
3085 if (!zdr_u_int (zdrs, &objp->mask))
3086 return FALSE;
3087 return TRUE;
3088}
3089
3090bool_t
3091zdr_GETACL3resok (ZDR *zdrs, GETACL3resok *objp)
3092{
3093 register int32_t *buf;
3094 buf = NULL;
3095
3096 if (!zdr_post_op_attr (zdrs, &objp->attr))
3097 return FALSE;
3098 if (!zdr_u_int (zdrs, &objp->mask))
3099 return FALSE;
3100 if (!zdr_u_int (zdrs, &objp->ace_count))
3101 return FALSE;
3102 if (!zdr_array (zdrs, (char **)&objp->ace.ace_val, (u_int *) &objp->ace.ace_len, ~0,
3103 sizeof (nfsacl_ace), (zdrproc_t) zdr_nfsacl_ace))
3104 return FALSE;
3105 if (!zdr_u_int (zdrs, &objp->default_ace_count))
3106 return FALSE;
3107 if (!zdr_array (zdrs, (char **)&objp->default_ace.default_ace_val, (u_int *) &objp->default_ace.default_ace_len, ~0,
3108 sizeof (nfsacl_ace), (zdrproc_t) zdr_nfsacl_ace))
3109 return FALSE;
3110 return TRUE;
3111}
3112
3113bool_t
3114zdr_GETACL3res (ZDR *zdrs, GETACL3res *objp)
3115{
3116 register int32_t *buf;
3117 buf = NULL;
3118
3119 if (!zdr_nfsstat3 (zdrs, &objp->status))
3120 return FALSE;
3121 switch (objp->status) {
3122 case NFS3_OK:
3123 if (!zdr_GETACL3resok (zdrs, &objp->GETACL3res_u.resok))
3124 return FALSE;
3125 break;
3126 default:
3127 break;
3128 }
3129 return TRUE;
3130}
3131
3132bool_t
3133zdr_SETACL3args (ZDR *zdrs, SETACL3args *objp)
3134{
3135 register int32_t *buf;
3136 buf = NULL;
3137
3138 if (!zdr_nfs_fh3 (zdrs, &objp->dir))
3139 return FALSE;
3140 if (!zdr_u_int (zdrs, &objp->mask))
3141 return FALSE;
3142 if (!zdr_u_int (zdrs, &objp->ace_count))
3143 return FALSE;
3144 if (!zdr_array (zdrs, (char **)&objp->ace.ace_val, (u_int *) &objp->ace.ace_len, ~0,
3145 sizeof (nfsacl_ace), (zdrproc_t) zdr_nfsacl_ace))
3146 return FALSE;
3147 if (!zdr_u_int (zdrs, &objp->default_ace_count))
3148 return FALSE;
3149 if (!zdr_array (zdrs, (char **)&objp->default_ace.default_ace_val, (u_int *) &objp->default_ace.default_ace_len, ~0,
3150 sizeof (nfsacl_ace), (zdrproc_t) zdr_nfsacl_ace))
3151 return FALSE;
3152 return TRUE;
3153}
3154
3155bool_t
3156zdr_SETACL3resok (ZDR *zdrs, SETACL3resok *objp)
3157{
3158 register int32_t *buf;
3159 buf = NULL;
3160
3161 if (!zdr_post_op_attr (zdrs, &objp->attr))
3162 return FALSE;
3163 return TRUE;
3164}
3165
3166bool_t
3167zdr_SETACL3res (ZDR *zdrs, SETACL3res *objp)
3168{
3169 register int32_t *buf;
3170 buf = NULL;
3171
3172 if (!zdr_nfsstat3 (zdrs, &objp->status))
3173 return FALSE;
3174 switch (objp->status) {
3175 case NFS3_OK:
3176 if (!zdr_SETACL3resok (zdrs, &objp->SETACL3res_u.resok))
3177 return FALSE;
3178 break;
3179 default:
3180 break;
3181 }
3182 return TRUE;
3183}