04e914d74e3b24411cdaa92c6ecc43ef2817636e
[deb_libnfs.git] / nfs / libnfs-raw-nfs.c
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
9 bool_t
10 zdr_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
20 bool_t
21 zdr_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
31 bool_t
32 zdr_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
42 bool_t
43 zdr_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
53 bool_t
54 zdr_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
64 bool_t
65 zdr_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
77 bool_t
78 zdr_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
88 bool_t
89 zdr_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
99 bool_t
100 zdr_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
110 bool_t
111 zdr_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
121 bool_t
122 zdr_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
132 bool_t
133 zdr_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
143 bool_t
144 zdr_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
156 bool_t
157 zdr_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
169 bool_t
170 zdr_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
204 bool_t
205 zdr_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
225 bool_t
226 zdr_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
236 bool_t
237 zdr_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
247 bool_t
248 zdr_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
258 bool_t
259 zdr_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
269 bool_t
270 zdr_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
284 bool_t
285 zdr_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
305 bool_t
306 zdr_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
318 bool_t
319 zdr_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
337 bool_t
338 zdr_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
348 bool_t
349 zdr_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
365 bool_t
366 zdr_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
376 bool_t
377 zdr_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
397 bool_t
398 zdr_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
408 bool_t
409 zdr_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
423 bool_t
424 zdr_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
434 bool_t
435 zdr_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
455 bool_t
456 zdr_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
470 bool_t
471 zdr_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
483 bool_t
484 zdr_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
494 bool_t
495 zdr_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
515 bool_t
516 zdr_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
528 bool_t
529 zdr_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
541 bool_t
542 zdr_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
552 bool_t
553 zdr_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
573 bool_t
574 zdr_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
584 bool_t
585 zdr_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
595 bool_t
596 zdr_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
614 bool_t
615 zdr_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
625 bool_t
626 zdr_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
644 bool_t
645 zdr_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
663 bool_t
664 zdr_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
682 bool_t
683 zdr_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
701 bool_t
702 zdr_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
720 bool_t
721 zdr_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
739 bool_t
740 zdr_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
760 bool_t
761 zdr_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
771 bool_t
772 zdr_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
782 bool_t
783 zdr_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
809 bool_t
810 zdr_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
822 bool_t
823 zdr_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
843 bool_t
844 zdr_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
858 bool_t
859 zdr_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
869 bool_t
870 zdr_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
890 bool_t
891 zdr_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
901 bool_t
902 zdr_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
912 bool_t
913 zdr_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
923 bool_t
924 zdr_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
944 bool_t
945 zdr_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
959 bool_t
960 zdr_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
976 bool_t
977 zdr_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
987 bool_t
988 zdr_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
1008 bool_t
1009 zdr_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
1019 bool_t
1020 zdr_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
1125 bool_t
1126 zdr_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
1136 bool_t
1137 zdr_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
1157 bool_t
1158 zdr_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
1168 bool_t
1169 zdr_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
1193 bool_t
1194 zdr_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
1204 bool_t
1205 zdr_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
1225 bool_t
1226 zdr_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
1236 bool_t
1237 zdr_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
1314 bool_t
1315 zdr_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
1325 bool_t
1326 zdr_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
1346 bool_t
1347 zdr_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
1357 bool_t
1358 zdr_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
1370 bool_t
1371 zdr_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
1383 bool_t
1384 zdr_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
1398 bool_t
1399 zdr_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
1409 bool_t
1410 zdr_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
1430 bool_t
1431 zdr_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
1441 bool_t
1442 zdr_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
1454 bool_t
1455 zdr_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
1465 bool_t
1466 zdr_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
1486 bool_t
1487 zdr_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
1499 bool_t
1500 zdr_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
1530 bool_t
1531 zdr_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
1543 bool_t
1544 zdr_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
1558 bool_t
1559 zdr_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
1569 bool_t
1570 zdr_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
1590 bool_t
1591 zdr_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
1603 bool_t
1604 zdr_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
1618 bool_t
1619 zdr_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
1629 bool_t
1630 zdr_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
1650 bool_t
1651 zdr_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
1661 bool_t
1662 zdr_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
1672 bool_t
1673 zdr_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
1683 bool_t
1684 zdr_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
1704 bool_t
1705 zdr_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
1717 bool_t
1718 zdr_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
1730 bool_t
1731 zdr_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
1743 bool_t
1744 zdr_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
1764 bool_t
1765 zdr_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
1783 bool_t
1784 zdr_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
1804 bool_t
1805 zdr_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
1817 bool_t
1818 zdr_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
1832 bool_t
1833 zdr_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
1843 bool_t
1844 zdr_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
1864 bool_t
1865 zdr_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
1881 bool_t
1882 zdr_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
1898 bool_t
1899 zdr_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
1911 bool_t
1912 zdr_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
1926 bool_t
1927 zdr_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
1937 bool_t
1938 zdr_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
1958 bool_t
1959 zdr_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
1971 bool_t
1972 zdr_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
1984 bool_t
1985 zdr_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
1997 bool_t
1998 zdr_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
2018 bool_t
2019 zdr_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
2039 bool_t
2040 zdr_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
2054 bool_t
2055 zdr_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
2065 bool_t
2066 zdr_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
2076 bool_t
2077 zdr_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
2097 bool_t
2098 zdr_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
2108 bool_t
2109 zdr_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
2119 bool_t
2120 zdr_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
2249 bool_t
2250 zdr_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
2319 bool_t
2320 zdr_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
2330 bool_t
2331 zdr_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
2341 bool_t
2342 zdr_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
2352 bool_t
2353 zdr_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
2363 bool_t
2364 zdr_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
2380 bool_t
2381 zdr_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
2393 bool_t
2394 zdr_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
2404 bool_t
2405 zdr_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
2415 bool_t
2416 zdr_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
2434 bool_t
2435 zdr_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
2447 bool_t
2448 zdr_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
2458 bool_t
2459 zdr_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
2477 bool_t
2478 zdr_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
2488 bool_t
2489 zdr_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
2501 bool_t
2502 zdr_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
2520 bool_t
2521 zdr_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
2531 bool_t
2532 zdr_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
2542 bool_t
2543 zdr_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
2561 bool_t
2562 zdr_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
2578 bool_t
2579 zdr_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
2591 bool_t
2592 zdr_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
2610 bool_t
2611 zdr_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
2672 bool_t
2673 zdr_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
2683 bool_t
2684 zdr_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
2702 bool_t
2703 zdr_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
2715 bool_t
2716 zdr_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
2728 bool_t
2729 zdr_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
2747 bool_t
2748 zdr_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
2758 bool_t
2759 zdr_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
2769 bool_t
2770 zdr_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
2782 bool_t
2783 zdr_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
2793 bool_t
2794 zdr_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
2806 bool_t
2807 zdr_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
2817 bool_t
2818 zdr_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
2832 bool_t
2833 zdr_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
2843 bool_t
2844 zdr_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
2856 bool_t
2857 zdr_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
2869 bool_t
2870 zdr_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
2888 bool_t
2889 zdr_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
2899 bool_t
2900 zdr_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
2910 bool_t
2911 zdr_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
2925 bool_t
2926 zdr_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
2938 bool_t
2939 zdr_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
2957 bool_t
2958 zdr_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
2968 bool_t
2969 zdr_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
3032 bool_t
3033 zdr_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
3051 bool_t
3052 zdr_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
3062 bool_t
3063 zdr_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
3077 bool_t
3078 zdr_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
3090 bool_t
3091 zdr_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
3113 bool_t
3114 zdr_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
3132 bool_t
3133 zdr_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
3155 bool_t
3156 zdr_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
3166 bool_t
3167 zdr_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 }