]> git.ozlabs.org Git - ccan/blob - ccan/nfs/libnfs-raw-nfs.c
configurator: HAVE_SECTION_START_STOP
[ccan] / ccan / nfs / libnfs-raw-nfs.c
1 /*
2  * Please do not edit this file.
3  * It was generated using rpcgen.
4  */
5
6 #include "rpc/nfs.h"
7
8 bool_t
9 xdr_cookieverf3 (XDR *xdrs, cookieverf3 objp)
10 {
11         register int32_t *buf;
12
13          if (!xdr_opaque (xdrs, objp, NFS3_COOKIEVERFSIZE))
14                  return FALSE;
15         return TRUE;
16 }
17
18 bool_t
19 xdr_uint64 (XDR *xdrs, uint64 *objp)
20 {
21         register int32_t *buf;
22
23          if (!xdr_u_quad_t (xdrs, objp))
24                  return FALSE;
25         return TRUE;
26 }
27
28 bool_t
29 xdr_cookie3 (XDR *xdrs, cookie3 *objp)
30 {
31         register int32_t *buf;
32
33          if (!xdr_uint64 (xdrs, objp))
34                  return FALSE;
35         return TRUE;
36 }
37
38 bool_t
39 xdr_nfs_fh3 (XDR *xdrs, nfs_fh3 *objp)
40 {
41         register int32_t *buf;
42
43          if (!xdr_bytes (xdrs, (char **)&objp->data.data_val, (u_int *) &objp->data.data_len, NFS3_FHSIZE))
44                  return FALSE;
45         return TRUE;
46 }
47
48 bool_t
49 xdr_filename3 (XDR *xdrs, filename3 *objp)
50 {
51         register int32_t *buf;
52
53          if (!xdr_string (xdrs, objp, ~0))
54                  return FALSE;
55         return TRUE;
56 }
57
58 bool_t
59 xdr_diropargs3 (XDR *xdrs, diropargs3 *objp)
60 {
61         register int32_t *buf;
62
63          if (!xdr_nfs_fh3 (xdrs, &objp->dir))
64                  return FALSE;
65          if (!xdr_filename3 (xdrs, &objp->name))
66                  return FALSE;
67         return TRUE;
68 }
69
70 bool_t
71 xdr_ftype3 (XDR *xdrs, ftype3 *objp)
72 {
73         register int32_t *buf;
74
75          if (!xdr_enum (xdrs, (enum_t *) objp))
76                  return FALSE;
77         return TRUE;
78 }
79
80 bool_t
81 xdr_uint32 (XDR *xdrs, uint32 *objp)
82 {
83         register int32_t *buf;
84
85          if (!xdr_u_long (xdrs, objp))
86                  return FALSE;
87         return TRUE;
88 }
89
90 bool_t
91 xdr_int32 (XDR *xdrs, int32 *objp)
92 {
93         register int32_t *buf;
94
95          if (!xdr_long (xdrs, objp))
96                  return FALSE;
97         return TRUE;
98 }
99
100 bool_t
101 xdr_mode3 (XDR *xdrs, mode3 *objp)
102 {
103         register int32_t *buf;
104
105          if (!xdr_uint32 (xdrs, objp))
106                  return FALSE;
107         return TRUE;
108 }
109
110 bool_t
111 xdr_uid3 (XDR *xdrs, uid3 *objp)
112 {
113         register int32_t *buf;
114
115          if (!xdr_uint32 (xdrs, objp))
116                  return FALSE;
117         return TRUE;
118 }
119
120 bool_t
121 xdr_gid3 (XDR *xdrs, gid3 *objp)
122 {
123         register int32_t *buf;
124
125          if (!xdr_uint32 (xdrs, objp))
126                  return FALSE;
127         return TRUE;
128 }
129
130 bool_t
131 xdr_size3 (XDR *xdrs, size3 *objp)
132 {
133         register int32_t *buf;
134
135          if (!xdr_uint64 (xdrs, objp))
136                  return FALSE;
137         return TRUE;
138 }
139
140 bool_t
141 xdr_fileid3 (XDR *xdrs, fileid3 *objp)
142 {
143         register int32_t *buf;
144
145          if (!xdr_uint64 (xdrs, objp))
146                  return FALSE;
147         return TRUE;
148 }
149
150 bool_t
151 xdr_specdata3 (XDR *xdrs, specdata3 *objp)
152 {
153         register int32_t *buf;
154
155          if (!xdr_uint32 (xdrs, &objp->specdata1))
156                  return FALSE;
157          if (!xdr_uint32 (xdrs, &objp->specdata2))
158                  return FALSE;
159         return TRUE;
160 }
161
162 bool_t
163 xdr_nfstime3 (XDR *xdrs, nfstime3 *objp)
164 {
165         register int32_t *buf;
166
167          if (!xdr_uint32 (xdrs, &objp->seconds))
168                  return FALSE;
169          if (!xdr_uint32 (xdrs, &objp->nseconds))
170                  return FALSE;
171         return TRUE;
172 }
173
174 bool_t
175 xdr_fattr3 (XDR *xdrs, fattr3 *objp)
176 {
177         register int32_t *buf;
178
179          if (!xdr_ftype3 (xdrs, &objp->type))
180                  return FALSE;
181          if (!xdr_mode3 (xdrs, &objp->mode))
182                  return FALSE;
183          if (!xdr_uint32 (xdrs, &objp->nlink))
184                  return FALSE;
185          if (!xdr_uid3 (xdrs, &objp->uid))
186                  return FALSE;
187          if (!xdr_gid3 (xdrs, &objp->gid))
188                  return FALSE;
189          if (!xdr_size3 (xdrs, &objp->size))
190                  return FALSE;
191          if (!xdr_size3 (xdrs, &objp->used))
192                  return FALSE;
193          if (!xdr_specdata3 (xdrs, &objp->rdev))
194                  return FALSE;
195          if (!xdr_uint64 (xdrs, &objp->fsid))
196                  return FALSE;
197          if (!xdr_fileid3 (xdrs, &objp->fileid))
198                  return FALSE;
199          if (!xdr_nfstime3 (xdrs, &objp->atime))
200                  return FALSE;
201          if (!xdr_nfstime3 (xdrs, &objp->mtime))
202                  return FALSE;
203          if (!xdr_nfstime3 (xdrs, &objp->ctime))
204                  return FALSE;
205         return TRUE;
206 }
207
208 bool_t
209 xdr_post_op_attr (XDR *xdrs, post_op_attr *objp)
210 {
211         register int32_t *buf;
212
213          if (!xdr_bool (xdrs, &objp->attributes_follow))
214                  return FALSE;
215         switch (objp->attributes_follow) {
216         case TRUE:
217                  if (!xdr_fattr3 (xdrs, &objp->post_op_attr_u.attributes))
218                          return FALSE;
219                 break;
220         case FALSE:
221                 break;
222         default:
223                 return FALSE;
224         }
225         return TRUE;
226 }
227
228 bool_t
229 xdr_nfsstat3 (XDR *xdrs, nfsstat3 *objp)
230 {
231         register int32_t *buf;
232
233          if (!xdr_enum (xdrs, (enum_t *) objp))
234                  return FALSE;
235         return TRUE;
236 }
237
238 bool_t
239 xdr_stable_how (XDR *xdrs, stable_how *objp)
240 {
241         register int32_t *buf;
242
243          if (!xdr_enum (xdrs, (enum_t *) objp))
244                  return FALSE;
245         return TRUE;
246 }
247
248 bool_t
249 xdr_offset3 (XDR *xdrs, offset3 *objp)
250 {
251         register int32_t *buf;
252
253          if (!xdr_uint64 (xdrs, objp))
254                  return FALSE;
255         return TRUE;
256 }
257
258 bool_t
259 xdr_count3 (XDR *xdrs, count3 *objp)
260 {
261         register int32_t *buf;
262
263          if (!xdr_uint32 (xdrs, objp))
264                  return FALSE;
265         return TRUE;
266 }
267
268 bool_t
269 xdr_wcc_attr (XDR *xdrs, wcc_attr *objp)
270 {
271         register int32_t *buf;
272
273          if (!xdr_size3 (xdrs, &objp->size))
274                  return FALSE;
275          if (!xdr_nfstime3 (xdrs, &objp->mtime))
276                  return FALSE;
277          if (!xdr_nfstime3 (xdrs, &objp->ctime))
278                  return FALSE;
279         return TRUE;
280 }
281
282 bool_t
283 xdr_pre_op_attr (XDR *xdrs, pre_op_attr *objp)
284 {
285         register int32_t *buf;
286
287          if (!xdr_bool (xdrs, &objp->attributes_follow))
288                  return FALSE;
289         switch (objp->attributes_follow) {
290         case TRUE:
291                  if (!xdr_wcc_attr (xdrs, &objp->pre_op_attr_u.attributes))
292                          return FALSE;
293                 break;
294         case FALSE:
295                 break;
296         default:
297                 return FALSE;
298         }
299         return TRUE;
300 }
301
302 bool_t
303 xdr_wcc_data (XDR *xdrs, wcc_data *objp)
304 {
305         register int32_t *buf;
306
307          if (!xdr_pre_op_attr (xdrs, &objp->before))
308                  return FALSE;
309          if (!xdr_post_op_attr (xdrs, &objp->after))
310                  return FALSE;
311         return TRUE;
312 }
313
314 bool_t
315 xdr_WRITE3args (XDR *xdrs, WRITE3args *objp)
316 {
317         register int32_t *buf;
318
319          if (!xdr_nfs_fh3 (xdrs, &objp->file))
320                  return FALSE;
321          if (!xdr_offset3 (xdrs, &objp->offset))
322                  return FALSE;
323          if (!xdr_count3 (xdrs, &objp->count))
324                  return FALSE;
325          if (!xdr_stable_how (xdrs, &objp->stable))
326                  return FALSE;
327          if (!xdr_bytes (xdrs, (char **)&objp->data.data_val, (u_int *) &objp->data.data_len, ~0))
328                  return FALSE;
329         return TRUE;
330 }
331
332 bool_t
333 xdr_writeverf3 (XDR *xdrs, writeverf3 objp)
334 {
335         register int32_t *buf;
336
337          if (!xdr_opaque (xdrs, objp, NFS3_WRITEVERFSIZE))
338                  return FALSE;
339         return TRUE;
340 }
341
342 bool_t
343 xdr_WRITE3resok (XDR *xdrs, WRITE3resok *objp)
344 {
345         register int32_t *buf;
346
347          if (!xdr_wcc_data (xdrs, &objp->file_wcc))
348                  return FALSE;
349          if (!xdr_count3 (xdrs, &objp->count))
350                  return FALSE;
351          if (!xdr_stable_how (xdrs, &objp->committed))
352                  return FALSE;
353          if (!xdr_writeverf3 (xdrs, objp->verf))
354                  return FALSE;
355         return TRUE;
356 }
357
358 bool_t
359 xdr_WRITE3resfail (XDR *xdrs, WRITE3resfail *objp)
360 {
361         register int32_t *buf;
362
363          if (!xdr_wcc_data (xdrs, &objp->file_wcc))
364                  return FALSE;
365         return TRUE;
366 }
367
368 bool_t
369 xdr_WRITE3res (XDR *xdrs, WRITE3res *objp)
370 {
371         register int32_t *buf;
372
373          if (!xdr_nfsstat3 (xdrs, &objp->status))
374                  return FALSE;
375         switch (objp->status) {
376         case NFS3_OK:
377                  if (!xdr_WRITE3resok (xdrs, &objp->WRITE3res_u.resok))
378                          return FALSE;
379                 break;
380         default:
381                  if (!xdr_WRITE3resfail (xdrs, &objp->WRITE3res_u.resfail))
382                          return FALSE;
383                 break;
384         }
385         return TRUE;
386 }
387
388 bool_t
389 xdr_LOOKUP3args (XDR *xdrs, LOOKUP3args *objp)
390 {
391         register int32_t *buf;
392
393          if (!xdr_diropargs3 (xdrs, &objp->what))
394                  return FALSE;
395         return TRUE;
396 }
397
398 bool_t
399 xdr_LOOKUP3resok (XDR *xdrs, LOOKUP3resok *objp)
400 {
401         register int32_t *buf;
402
403          if (!xdr_nfs_fh3 (xdrs, &objp->object))
404                  return FALSE;
405          if (!xdr_post_op_attr (xdrs, &objp->obj_attributes))
406                  return FALSE;
407          if (!xdr_post_op_attr (xdrs, &objp->dir_attributes))
408                  return FALSE;
409         return TRUE;
410 }
411
412 bool_t
413 xdr_LOOKUP3resfail (XDR *xdrs, LOOKUP3resfail *objp)
414 {
415         register int32_t *buf;
416
417          if (!xdr_post_op_attr (xdrs, &objp->dir_attributes))
418                  return FALSE;
419         return TRUE;
420 }
421
422 bool_t
423 xdr_LOOKUP3res (XDR *xdrs, LOOKUP3res *objp)
424 {
425         register int32_t *buf;
426
427          if (!xdr_nfsstat3 (xdrs, &objp->status))
428                  return FALSE;
429         switch (objp->status) {
430         case NFS3_OK:
431                  if (!xdr_LOOKUP3resok (xdrs, &objp->LOOKUP3res_u.resok))
432                          return FALSE;
433                 break;
434         default:
435                  if (!xdr_LOOKUP3resfail (xdrs, &objp->LOOKUP3res_u.resfail))
436                          return FALSE;
437                 break;
438         }
439         return TRUE;
440 }
441
442 bool_t
443 xdr_COMMIT3args (XDR *xdrs, COMMIT3args *objp)
444 {
445         register int32_t *buf;
446
447          if (!xdr_nfs_fh3 (xdrs, &objp->file))
448                  return FALSE;
449          if (!xdr_offset3 (xdrs, &objp->offset))
450                  return FALSE;
451          if (!xdr_count3 (xdrs, &objp->count))
452                  return FALSE;
453         return TRUE;
454 }
455
456 bool_t
457 xdr_COMMIT3resok (XDR *xdrs, COMMIT3resok *objp)
458 {
459         register int32_t *buf;
460
461          if (!xdr_wcc_data (xdrs, &objp->file_wcc))
462                  return FALSE;
463          if (!xdr_writeverf3 (xdrs, objp->verf))
464                  return FALSE;
465         return TRUE;
466 }
467
468 bool_t
469 xdr_COMMIT3resfail (XDR *xdrs, COMMIT3resfail *objp)
470 {
471         register int32_t *buf;
472
473          if (!xdr_wcc_data (xdrs, &objp->file_wcc))
474                  return FALSE;
475         return TRUE;
476 }
477
478 bool_t
479 xdr_COMMIT3res (XDR *xdrs, COMMIT3res *objp)
480 {
481         register int32_t *buf;
482
483          if (!xdr_nfsstat3 (xdrs, &objp->status))
484                  return FALSE;
485         switch (objp->status) {
486         case NFS3_OK:
487                  if (!xdr_COMMIT3resok (xdrs, &objp->COMMIT3res_u.resok))
488                          return FALSE;
489                 break;
490         default:
491                  if (!xdr_COMMIT3resfail (xdrs, &objp->COMMIT3res_u.resfail))
492                          return FALSE;
493                 break;
494         }
495         return TRUE;
496 }
497
498 bool_t
499 xdr_ACCESS3args (XDR *xdrs, ACCESS3args *objp)
500 {
501         register int32_t *buf;
502
503          if (!xdr_nfs_fh3 (xdrs, &objp->object))
504                  return FALSE;
505          if (!xdr_uint32 (xdrs, &objp->access))
506                  return FALSE;
507         return TRUE;
508 }
509
510 bool_t
511 xdr_ACCESS3resok (XDR *xdrs, ACCESS3resok *objp)
512 {
513         register int32_t *buf;
514
515          if (!xdr_post_op_attr (xdrs, &objp->obj_attributes))
516                  return FALSE;
517          if (!xdr_uint32 (xdrs, &objp->access))
518                  return FALSE;
519         return TRUE;
520 }
521
522 bool_t
523 xdr_ACCESS3resfail (XDR *xdrs, ACCESS3resfail *objp)
524 {
525         register int32_t *buf;
526
527          if (!xdr_post_op_attr (xdrs, &objp->obj_attributes))
528                  return FALSE;
529         return TRUE;
530 }
531
532 bool_t
533 xdr_ACCESS3res (XDR *xdrs, ACCESS3res *objp)
534 {
535         register int32_t *buf;
536
537          if (!xdr_nfsstat3 (xdrs, &objp->status))
538                  return FALSE;
539         switch (objp->status) {
540         case NFS3_OK:
541                  if (!xdr_ACCESS3resok (xdrs, &objp->ACCESS3res_u.resok))
542                          return FALSE;
543                 break;
544         default:
545                  if (!xdr_ACCESS3resfail (xdrs, &objp->ACCESS3res_u.resfail))
546                          return FALSE;
547                 break;
548         }
549         return TRUE;
550 }
551
552 bool_t
553 xdr_GETATTR3args (XDR *xdrs, GETATTR3args *objp)
554 {
555         register int32_t *buf;
556
557          if (!xdr_nfs_fh3 (xdrs, &objp->object))
558                  return FALSE;
559         return TRUE;
560 }
561
562 bool_t
563 xdr_GETATTR3resok (XDR *xdrs, GETATTR3resok *objp)
564 {
565         register int32_t *buf;
566
567          if (!xdr_fattr3 (xdrs, &objp->obj_attributes))
568                  return FALSE;
569         return TRUE;
570 }
571
572 bool_t
573 xdr_GETATTR3res (XDR *xdrs, GETATTR3res *objp)
574 {
575         register int32_t *buf;
576
577          if (!xdr_nfsstat3 (xdrs, &objp->status))
578                  return FALSE;
579         switch (objp->status) {
580         case NFS3_OK:
581                  if (!xdr_GETATTR3resok (xdrs, &objp->GETATTR3res_u.resok))
582                          return FALSE;
583                 break;
584         default:
585                 break;
586         }
587         return TRUE;
588 }
589
590 bool_t
591 xdr_time_how (XDR *xdrs, time_how *objp)
592 {
593         register int32_t *buf;
594
595          if (!xdr_enum (xdrs, (enum_t *) objp))
596                  return FALSE;
597         return TRUE;
598 }
599
600 bool_t
601 xdr_set_mode3 (XDR *xdrs, set_mode3 *objp)
602 {
603         register int32_t *buf;
604
605          if (!xdr_bool (xdrs, &objp->set_it))
606                  return FALSE;
607         switch (objp->set_it) {
608         case TRUE:
609                  if (!xdr_mode3 (xdrs, &objp->set_mode3_u.mode))
610                          return FALSE;
611                 break;
612         default:
613                 break;
614         }
615         return TRUE;
616 }
617
618 bool_t
619 xdr_set_uid3 (XDR *xdrs, set_uid3 *objp)
620 {
621         register int32_t *buf;
622
623          if (!xdr_bool (xdrs, &objp->set_it))
624                  return FALSE;
625         switch (objp->set_it) {
626         case TRUE:
627                  if (!xdr_uid3 (xdrs, &objp->set_uid3_u.uid))
628                          return FALSE;
629                 break;
630         default:
631                 break;
632         }
633         return TRUE;
634 }
635
636 bool_t
637 xdr_set_gid3 (XDR *xdrs, set_gid3 *objp)
638 {
639         register int32_t *buf;
640
641          if (!xdr_bool (xdrs, &objp->set_it))
642                  return FALSE;
643         switch (objp->set_it) {
644         case TRUE:
645                  if (!xdr_gid3 (xdrs, &objp->set_gid3_u.gid))
646                          return FALSE;
647                 break;
648         default:
649                 break;
650         }
651         return TRUE;
652 }
653
654 bool_t
655 xdr_set_size3 (XDR *xdrs, set_size3 *objp)
656 {
657         register int32_t *buf;
658
659          if (!xdr_bool (xdrs, &objp->set_it))
660                  return FALSE;
661         switch (objp->set_it) {
662         case TRUE:
663                  if (!xdr_size3 (xdrs, &objp->set_size3_u.size))
664                          return FALSE;
665                 break;
666         default:
667                 break;
668         }
669         return TRUE;
670 }
671
672 bool_t
673 xdr_set_atime (XDR *xdrs, set_atime *objp)
674 {
675         register int32_t *buf;
676
677          if (!xdr_time_how (xdrs, &objp->set_it))
678                  return FALSE;
679         switch (objp->set_it) {
680         case SET_TO_CLIENT_TIME:
681                  if (!xdr_nfstime3 (xdrs, &objp->set_atime_u.atime))
682                          return FALSE;
683                 break;
684         default:
685                 break;
686         }
687         return TRUE;
688 }
689
690 bool_t
691 xdr_set_mtime (XDR *xdrs, set_mtime *objp)
692 {
693         register int32_t *buf;
694
695          if (!xdr_time_how (xdrs, &objp->set_it))
696                  return FALSE;
697         switch (objp->set_it) {
698         case SET_TO_CLIENT_TIME:
699                  if (!xdr_nfstime3 (xdrs, &objp->set_mtime_u.mtime))
700                          return FALSE;
701                 break;
702         default:
703                 break;
704         }
705         return TRUE;
706 }
707
708 bool_t
709 xdr_sattr3 (XDR *xdrs, sattr3 *objp)
710 {
711         register int32_t *buf;
712
713          if (!xdr_set_mode3 (xdrs, &objp->mode))
714                  return FALSE;
715          if (!xdr_set_uid3 (xdrs, &objp->uid))
716                  return FALSE;
717          if (!xdr_set_gid3 (xdrs, &objp->gid))
718                  return FALSE;
719          if (!xdr_set_size3 (xdrs, &objp->size))
720                  return FALSE;
721          if (!xdr_set_atime (xdrs, &objp->atime))
722                  return FALSE;
723          if (!xdr_set_mtime (xdrs, &objp->mtime))
724                  return FALSE;
725         return TRUE;
726 }
727
728 bool_t
729 xdr_createmode3 (XDR *xdrs, createmode3 *objp)
730 {
731         register int32_t *buf;
732
733          if (!xdr_enum (xdrs, (enum_t *) objp))
734                  return FALSE;
735         return TRUE;
736 }
737
738 bool_t
739 xdr_createverf3 (XDR *xdrs, createverf3 objp)
740 {
741         register int32_t *buf;
742
743          if (!xdr_opaque (xdrs, objp, NFS3_CREATEVERFSIZE))
744                  return FALSE;
745         return TRUE;
746 }
747
748 bool_t
749 xdr_createhow3 (XDR *xdrs, createhow3 *objp)
750 {
751         register int32_t *buf;
752
753          if (!xdr_createmode3 (xdrs, &objp->mode))
754                  return FALSE;
755         switch (objp->mode) {
756         case UNCHECKED:
757         case GUARDED:
758                  if (!xdr_sattr3 (xdrs, &objp->createhow3_u.obj_attributes))
759                          return FALSE;
760                 break;
761         case EXCLUSIVE:
762                  if (!xdr_createverf3 (xdrs, objp->createhow3_u.verf))
763                          return FALSE;
764                 break;
765         default:
766                 return FALSE;
767         }
768         return TRUE;
769 }
770
771 bool_t
772 xdr_CREATE3args (XDR *xdrs, CREATE3args *objp)
773 {
774         register int32_t *buf;
775
776          if (!xdr_diropargs3 (xdrs, &objp->where))
777                  return FALSE;
778          if (!xdr_createhow3 (xdrs, &objp->how))
779                  return FALSE;
780         return TRUE;
781 }
782
783 bool_t
784 xdr_post_op_fh3 (XDR *xdrs, post_op_fh3 *objp)
785 {
786         register int32_t *buf;
787
788          if (!xdr_bool (xdrs, &objp->handle_follows))
789                  return FALSE;
790         switch (objp->handle_follows) {
791         case TRUE:
792                  if (!xdr_nfs_fh3 (xdrs, &objp->post_op_fh3_u.handle))
793                          return FALSE;
794                 break;
795         case FALSE:
796                 break;
797         default:
798                 return FALSE;
799         }
800         return TRUE;
801 }
802
803 bool_t
804 xdr_CREATE3resok (XDR *xdrs, CREATE3resok *objp)
805 {
806         register int32_t *buf;
807
808          if (!xdr_post_op_fh3 (xdrs, &objp->obj))
809                  return FALSE;
810          if (!xdr_post_op_attr (xdrs, &objp->obj_attributes))
811                  return FALSE;
812          if (!xdr_wcc_data (xdrs, &objp->dir_wcc))
813                  return FALSE;
814         return TRUE;
815 }
816
817 bool_t
818 xdr_CREATE3resfail (XDR *xdrs, CREATE3resfail *objp)
819 {
820         register int32_t *buf;
821
822          if (!xdr_wcc_data (xdrs, &objp->dir_wcc))
823                  return FALSE;
824         return TRUE;
825 }
826
827 bool_t
828 xdr_CREATE3res (XDR *xdrs, CREATE3res *objp)
829 {
830         register int32_t *buf;
831
832          if (!xdr_nfsstat3 (xdrs, &objp->status))
833                  return FALSE;
834         switch (objp->status) {
835         case NFS3_OK:
836                  if (!xdr_CREATE3resok (xdrs, &objp->CREATE3res_u.resok))
837                          return FALSE;
838                 break;
839         default:
840                  if (!xdr_CREATE3resfail (xdrs, &objp->CREATE3res_u.resfail))
841                          return FALSE;
842                 break;
843         }
844         return TRUE;
845 }
846
847 bool_t
848 xdr_REMOVE3args (XDR *xdrs, REMOVE3args *objp)
849 {
850         register int32_t *buf;
851
852          if (!xdr_diropargs3 (xdrs, &objp->object))
853                  return FALSE;
854         return TRUE;
855 }
856
857 bool_t
858 xdr_REMOVE3resok (XDR *xdrs, REMOVE3resok *objp)
859 {
860         register int32_t *buf;
861
862          if (!xdr_wcc_data (xdrs, &objp->dir_wcc))
863                  return FALSE;
864         return TRUE;
865 }
866
867 bool_t
868 xdr_REMOVE3resfail (XDR *xdrs, REMOVE3resfail *objp)
869 {
870         register int32_t *buf;
871
872          if (!xdr_wcc_data (xdrs, &objp->dir_wcc))
873                  return FALSE;
874         return TRUE;
875 }
876
877 bool_t
878 xdr_REMOVE3res (XDR *xdrs, REMOVE3res *objp)
879 {
880         register int32_t *buf;
881
882          if (!xdr_nfsstat3 (xdrs, &objp->status))
883                  return FALSE;
884         switch (objp->status) {
885         case NFS3_OK:
886                  if (!xdr_REMOVE3resok (xdrs, &objp->REMOVE3res_u.resok))
887                          return FALSE;
888                 break;
889         default:
890                  if (!xdr_REMOVE3resfail (xdrs, &objp->REMOVE3res_u.resfail))
891                          return FALSE;
892                 break;
893         }
894         return TRUE;
895 }
896
897 bool_t
898 xdr_READ3args (XDR *xdrs, READ3args *objp)
899 {
900         register int32_t *buf;
901
902          if (!xdr_nfs_fh3 (xdrs, &objp->file))
903                  return FALSE;
904          if (!xdr_offset3 (xdrs, &objp->offset))
905                  return FALSE;
906          if (!xdr_count3 (xdrs, &objp->count))
907                  return FALSE;
908         return TRUE;
909 }
910
911 bool_t
912 xdr_READ3resok (XDR *xdrs, READ3resok *objp)
913 {
914         register int32_t *buf;
915
916          if (!xdr_post_op_attr (xdrs, &objp->file_attributes))
917                  return FALSE;
918          if (!xdr_count3 (xdrs, &objp->count))
919                  return FALSE;
920          if (!xdr_bool (xdrs, &objp->eof))
921                  return FALSE;
922          if (!xdr_bytes (xdrs, (char **)&objp->data.data_val, (u_int *) &objp->data.data_len, ~0))
923                  return FALSE;
924         return TRUE;
925 }
926
927 bool_t
928 xdr_READ3resfail (XDR *xdrs, READ3resfail *objp)
929 {
930         register int32_t *buf;
931
932          if (!xdr_post_op_attr (xdrs, &objp->file_attributes))
933                  return FALSE;
934         return TRUE;
935 }
936
937 bool_t
938 xdr_READ3res (XDR *xdrs, READ3res *objp)
939 {
940         register int32_t *buf;
941
942          if (!xdr_nfsstat3 (xdrs, &objp->status))
943                  return FALSE;
944         switch (objp->status) {
945         case NFS3_OK:
946                  if (!xdr_READ3resok (xdrs, &objp->READ3res_u.resok))
947                          return FALSE;
948                 break;
949         default:
950                  if (!xdr_READ3resfail (xdrs, &objp->READ3res_u.resfail))
951                          return FALSE;
952                 break;
953         }
954         return TRUE;
955 }
956
957 bool_t
958 xdr_FSINFO3args (XDR *xdrs, FSINFO3args *objp)
959 {
960         register int32_t *buf;
961
962          if (!xdr_nfs_fh3 (xdrs, &objp->fsroot))
963                  return FALSE;
964         return TRUE;
965 }
966
967 bool_t
968 xdr_FSINFO3resok (XDR *xdrs, FSINFO3resok *objp)
969 {
970         register int32_t *buf;
971
972          if (!xdr_post_op_attr (xdrs, &objp->obj_attributes))
973                  return FALSE;
974          if (!xdr_uint32 (xdrs, &objp->rtmax))
975                  return FALSE;
976          if (!xdr_uint32 (xdrs, &objp->rtpref))
977                  return FALSE;
978          if (!xdr_uint32 (xdrs, &objp->rtmult))
979                  return FALSE;
980          if (!xdr_uint32 (xdrs, &objp->wtmax))
981                  return FALSE;
982          if (!xdr_uint32 (xdrs, &objp->wtpref))
983                  return FALSE;
984          if (!xdr_uint32 (xdrs, &objp->wtmult))
985                  return FALSE;
986          if (!xdr_uint32 (xdrs, &objp->dtpref))
987                  return FALSE;
988          if (!xdr_size3 (xdrs, &objp->maxfilesize))
989                  return FALSE;
990          if (!xdr_nfstime3 (xdrs, &objp->time_delta))
991                  return FALSE;
992          if (!xdr_uint32 (xdrs, &objp->properties))
993                  return FALSE;
994         return TRUE;
995 }
996
997 bool_t
998 xdr_FSINFO3resfail (XDR *xdrs, FSINFO3resfail *objp)
999 {
1000         register int32_t *buf;
1001
1002          if (!xdr_post_op_attr (xdrs, &objp->obj_attributes))
1003                  return FALSE;
1004         return TRUE;
1005 }
1006
1007 bool_t
1008 xdr_FSINFO3res (XDR *xdrs, FSINFO3res *objp)
1009 {
1010         register int32_t *buf;
1011
1012          if (!xdr_nfsstat3 (xdrs, &objp->status))
1013                  return FALSE;
1014         switch (objp->status) {
1015         case NFS3_OK:
1016                  if (!xdr_FSINFO3resok (xdrs, &objp->FSINFO3res_u.resok))
1017                          return FALSE;
1018                 break;
1019         default:
1020                  if (!xdr_FSINFO3resfail (xdrs, &objp->FSINFO3res_u.resfail))
1021                          return FALSE;
1022                 break;
1023         }
1024         return TRUE;
1025 }
1026
1027 bool_t
1028 xdr_FSSTAT3args (XDR *xdrs, FSSTAT3args *objp)
1029 {
1030         register int32_t *buf;
1031
1032          if (!xdr_nfs_fh3 (xdrs, &objp->fsroot))
1033                  return FALSE;
1034         return TRUE;
1035 }
1036
1037 bool_t
1038 xdr_FSSTAT3resok (XDR *xdrs, FSSTAT3resok *objp)
1039 {
1040         register int32_t *buf;
1041
1042          if (!xdr_post_op_attr (xdrs, &objp->obj_attributes))
1043                  return FALSE;
1044          if (!xdr_size3 (xdrs, &objp->tbytes))
1045                  return FALSE;
1046          if (!xdr_size3 (xdrs, &objp->fbytes))
1047                  return FALSE;
1048          if (!xdr_size3 (xdrs, &objp->abytes))
1049                  return FALSE;
1050          if (!xdr_size3 (xdrs, &objp->tfiles))
1051                  return FALSE;
1052          if (!xdr_size3 (xdrs, &objp->ffiles))
1053                  return FALSE;
1054          if (!xdr_size3 (xdrs, &objp->afiles))
1055                  return FALSE;
1056          if (!xdr_uint32 (xdrs, &objp->invarsec))
1057                  return FALSE;
1058         return TRUE;
1059 }
1060
1061 bool_t
1062 xdr_FSSTAT3resfail (XDR *xdrs, FSSTAT3resfail *objp)
1063 {
1064         register int32_t *buf;
1065
1066          if (!xdr_post_op_attr (xdrs, &objp->obj_attributes))
1067                  return FALSE;
1068         return TRUE;
1069 }
1070
1071 bool_t
1072 xdr_FSSTAT3res (XDR *xdrs, FSSTAT3res *objp)
1073 {
1074         register int32_t *buf;
1075
1076          if (!xdr_nfsstat3 (xdrs, &objp->status))
1077                  return FALSE;
1078         switch (objp->status) {
1079         case NFS3_OK:
1080                  if (!xdr_FSSTAT3resok (xdrs, &objp->FSSTAT3res_u.resok))
1081                          return FALSE;
1082                 break;
1083         default:
1084                  if (!xdr_FSSTAT3resfail (xdrs, &objp->FSSTAT3res_u.resfail))
1085                          return FALSE;
1086                 break;
1087         }
1088         return TRUE;
1089 }
1090
1091 bool_t
1092 xdr_PATHCONF3args (XDR *xdrs, PATHCONF3args *objp)
1093 {
1094         register int32_t *buf;
1095
1096          if (!xdr_nfs_fh3 (xdrs, &objp->object))
1097                  return FALSE;
1098         return TRUE;
1099 }
1100
1101 bool_t
1102 xdr_PATHCONF3resok (XDR *xdrs, PATHCONF3resok *objp)
1103 {
1104         register int32_t *buf;
1105
1106
1107         if (xdrs->x_op == XDR_ENCODE) {
1108                  if (!xdr_post_op_attr (xdrs, &objp->obj_attributes))
1109                          return FALSE;
1110                  if (!xdr_uint32 (xdrs, &objp->linkmax))
1111                          return FALSE;
1112                  if (!xdr_uint32 (xdrs, &objp->name_max))
1113                          return FALSE;
1114                 buf = XDR_INLINE (xdrs, 4 * BYTES_PER_XDR_UNIT);
1115                 if (buf == NULL) {
1116                          if (!xdr_bool (xdrs, &objp->no_trunc))
1117                                  return FALSE;
1118                          if (!xdr_bool (xdrs, &objp->chown_restricted))
1119                                  return FALSE;
1120                          if (!xdr_bool (xdrs, &objp->case_insensitive))
1121                                  return FALSE;
1122                          if (!xdr_bool (xdrs, &objp->case_preserving))
1123                                  return FALSE;
1124                 } else {
1125                         IXDR_PUT_BOOL(buf, objp->no_trunc);
1126                         IXDR_PUT_BOOL(buf, objp->chown_restricted);
1127                         IXDR_PUT_BOOL(buf, objp->case_insensitive);
1128                         IXDR_PUT_BOOL(buf, objp->case_preserving);
1129                 }
1130                 return TRUE;
1131         } else if (xdrs->x_op == XDR_DECODE) {
1132                  if (!xdr_post_op_attr (xdrs, &objp->obj_attributes))
1133                          return FALSE;
1134                  if (!xdr_uint32 (xdrs, &objp->linkmax))
1135                          return FALSE;
1136                  if (!xdr_uint32 (xdrs, &objp->name_max))
1137                          return FALSE;
1138                 buf = XDR_INLINE (xdrs, 4 * BYTES_PER_XDR_UNIT);
1139                 if (buf == NULL) {
1140                          if (!xdr_bool (xdrs, &objp->no_trunc))
1141                                  return FALSE;
1142                          if (!xdr_bool (xdrs, &objp->chown_restricted))
1143                                  return FALSE;
1144                          if (!xdr_bool (xdrs, &objp->case_insensitive))
1145                                  return FALSE;
1146                          if (!xdr_bool (xdrs, &objp->case_preserving))
1147                                  return FALSE;
1148                 } else {
1149                         objp->no_trunc = IXDR_GET_BOOL(buf);
1150                         objp->chown_restricted = IXDR_GET_BOOL(buf);
1151                         objp->case_insensitive = IXDR_GET_BOOL(buf);
1152                         objp->case_preserving = IXDR_GET_BOOL(buf);
1153                 }
1154          return TRUE;
1155         }
1156
1157          if (!xdr_post_op_attr (xdrs, &objp->obj_attributes))
1158                  return FALSE;
1159          if (!xdr_uint32 (xdrs, &objp->linkmax))
1160                  return FALSE;
1161          if (!xdr_uint32 (xdrs, &objp->name_max))
1162                  return FALSE;
1163          if (!xdr_bool (xdrs, &objp->no_trunc))
1164                  return FALSE;
1165          if (!xdr_bool (xdrs, &objp->chown_restricted))
1166                  return FALSE;
1167          if (!xdr_bool (xdrs, &objp->case_insensitive))
1168                  return FALSE;
1169          if (!xdr_bool (xdrs, &objp->case_preserving))
1170                  return FALSE;
1171         return TRUE;
1172 }
1173
1174 bool_t
1175 xdr_PATHCONF3resfail (XDR *xdrs, PATHCONF3resfail *objp)
1176 {
1177         register int32_t *buf;
1178
1179          if (!xdr_post_op_attr (xdrs, &objp->obj_attributes))
1180                  return FALSE;
1181         return TRUE;
1182 }
1183
1184 bool_t
1185 xdr_PATHCONF3res (XDR *xdrs, PATHCONF3res *objp)
1186 {
1187         register int32_t *buf;
1188
1189          if (!xdr_nfsstat3 (xdrs, &objp->status))
1190                  return FALSE;
1191         switch (objp->status) {
1192         case NFS3_OK:
1193                  if (!xdr_PATHCONF3resok (xdrs, &objp->PATHCONF3res_u.resok))
1194                          return FALSE;
1195                 break;
1196         default:
1197                  if (!xdr_PATHCONF3resfail (xdrs, &objp->PATHCONF3res_u.resfail))
1198                          return FALSE;
1199                 break;
1200         }
1201         return TRUE;
1202 }
1203
1204 bool_t
1205 xdr_nfspath3 (XDR *xdrs, nfspath3 *objp)
1206 {
1207         register int32_t *buf;
1208
1209          if (!xdr_string (xdrs, objp, ~0))
1210                  return FALSE;
1211         return TRUE;
1212 }
1213
1214 bool_t
1215 xdr_symlinkdata3 (XDR *xdrs, symlinkdata3 *objp)
1216 {
1217         register int32_t *buf;
1218
1219          if (!xdr_sattr3 (xdrs, &objp->symlink_attributes))
1220                  return FALSE;
1221          if (!xdr_nfspath3 (xdrs, &objp->symlink_data))
1222                  return FALSE;
1223         return TRUE;
1224 }
1225
1226 bool_t
1227 xdr_SYMLINK3args (XDR *xdrs, SYMLINK3args *objp)
1228 {
1229         register int32_t *buf;
1230
1231          if (!xdr_diropargs3 (xdrs, &objp->where))
1232                  return FALSE;
1233          if (!xdr_symlinkdata3 (xdrs, &objp->symlink))
1234                  return FALSE;
1235         return TRUE;
1236 }
1237
1238 bool_t
1239 xdr_SYMLINK3resok (XDR *xdrs, SYMLINK3resok *objp)
1240 {
1241         register int32_t *buf;
1242
1243          if (!xdr_post_op_fh3 (xdrs, &objp->obj))
1244                  return FALSE;
1245          if (!xdr_post_op_attr (xdrs, &objp->obj_attributes))
1246                  return FALSE;
1247          if (!xdr_wcc_data (xdrs, &objp->dir_wcc))
1248                  return FALSE;
1249         return TRUE;
1250 }
1251
1252 bool_t
1253 xdr_SYMLINK3resfail (XDR *xdrs, SYMLINK3resfail *objp)
1254 {
1255         register int32_t *buf;
1256
1257          if (!xdr_wcc_data (xdrs, &objp->dir_wcc))
1258                  return FALSE;
1259         return TRUE;
1260 }
1261
1262 bool_t
1263 xdr_SYMLINK3res (XDR *xdrs, SYMLINK3res *objp)
1264 {
1265         register int32_t *buf;
1266
1267          if (!xdr_nfsstat3 (xdrs, &objp->status))
1268                  return FALSE;
1269         switch (objp->status) {
1270         case NFS3_OK:
1271                  if (!xdr_SYMLINK3resok (xdrs, &objp->SYMLINK3res_u.resok))
1272                          return FALSE;
1273                 break;
1274         default:
1275                  if (!xdr_SYMLINK3resfail (xdrs, &objp->SYMLINK3res_u.resfail))
1276                          return FALSE;
1277                 break;
1278         }
1279         return TRUE;
1280 }
1281
1282 bool_t
1283 xdr_READLINK3args (XDR *xdrs, READLINK3args *objp)
1284 {
1285         register int32_t *buf;
1286
1287          if (!xdr_nfs_fh3 (xdrs, &objp->symlink))
1288                  return FALSE;
1289         return TRUE;
1290 }
1291
1292 bool_t
1293 xdr_READLINK3resok (XDR *xdrs, READLINK3resok *objp)
1294 {
1295         register int32_t *buf;
1296
1297          if (!xdr_post_op_attr (xdrs, &objp->symlink_attributes))
1298                  return FALSE;
1299          if (!xdr_nfspath3 (xdrs, &objp->data))
1300                  return FALSE;
1301         return TRUE;
1302 }
1303
1304 bool_t
1305 xdr_READLINK3resfail (XDR *xdrs, READLINK3resfail *objp)
1306 {
1307         register int32_t *buf;
1308
1309          if (!xdr_post_op_attr (xdrs, &objp->symlink_attributes))
1310                  return FALSE;
1311         return TRUE;
1312 }
1313
1314 bool_t
1315 xdr_READLINK3res (XDR *xdrs, READLINK3res *objp)
1316 {
1317         register int32_t *buf;
1318
1319          if (!xdr_nfsstat3 (xdrs, &objp->status))
1320                  return FALSE;
1321         switch (objp->status) {
1322         case NFS3_OK:
1323                  if (!xdr_READLINK3resok (xdrs, &objp->READLINK3res_u.resok))
1324                          return FALSE;
1325                 break;
1326         default:
1327                  if (!xdr_READLINK3resfail (xdrs, &objp->READLINK3res_u.resfail))
1328                          return FALSE;
1329                 break;
1330         }
1331         return TRUE;
1332 }
1333
1334 bool_t
1335 xdr_devicedata3 (XDR *xdrs, devicedata3 *objp)
1336 {
1337         register int32_t *buf;
1338
1339          if (!xdr_sattr3 (xdrs, &objp->dev_attributes))
1340                  return FALSE;
1341          if (!xdr_specdata3 (xdrs, &objp->spec))
1342                  return FALSE;
1343         return TRUE;
1344 }
1345
1346 bool_t
1347 xdr_mknoddata3 (XDR *xdrs, mknoddata3 *objp)
1348 {
1349         register int32_t *buf;
1350
1351          if (!xdr_ftype3 (xdrs, &objp->type))
1352                  return FALSE;
1353         switch (objp->type) {
1354         case NF3CHR:
1355         case NF3BLK:
1356                  if (!xdr_devicedata3 (xdrs, &objp->mknoddata3_u.device))
1357                          return FALSE;
1358                 break;
1359         case NF3SOCK:
1360         case NF3FIFO:
1361                  if (!xdr_sattr3 (xdrs, &objp->mknoddata3_u.pipe_attributes))
1362                          return FALSE;
1363                 break;
1364         default:
1365                 break;
1366         }
1367         return TRUE;
1368 }
1369
1370 bool_t
1371 xdr_MKNOD3args (XDR *xdrs, MKNOD3args *objp)
1372 {
1373         register int32_t *buf;
1374
1375          if (!xdr_diropargs3 (xdrs, &objp->where))
1376                  return FALSE;
1377          if (!xdr_mknoddata3 (xdrs, &objp->what))
1378                  return FALSE;
1379         return TRUE;
1380 }
1381
1382 bool_t
1383 xdr_MKNOD3resok (XDR *xdrs, MKNOD3resok *objp)
1384 {
1385         register int32_t *buf;
1386
1387          if (!xdr_post_op_fh3 (xdrs, &objp->obj))
1388                  return FALSE;
1389          if (!xdr_post_op_attr (xdrs, &objp->obj_attributes))
1390                  return FALSE;
1391          if (!xdr_wcc_data (xdrs, &objp->dir_wcc))
1392                  return FALSE;
1393         return TRUE;
1394 }
1395
1396 bool_t
1397 xdr_MKNOD3resfail (XDR *xdrs, MKNOD3resfail *objp)
1398 {
1399         register int32_t *buf;
1400
1401          if (!xdr_wcc_data (xdrs, &objp->dir_wcc))
1402                  return FALSE;
1403         return TRUE;
1404 }
1405
1406 bool_t
1407 xdr_MKNOD3res (XDR *xdrs, MKNOD3res *objp)
1408 {
1409         register int32_t *buf;
1410
1411          if (!xdr_nfsstat3 (xdrs, &objp->status))
1412                  return FALSE;
1413         switch (objp->status) {
1414         case NFS3_OK:
1415                  if (!xdr_MKNOD3resok (xdrs, &objp->MKNOD3res_u.resok))
1416                          return FALSE;
1417                 break;
1418         default:
1419                  if (!xdr_MKNOD3resfail (xdrs, &objp->MKNOD3res_u.resfail))
1420                          return FALSE;
1421                 break;
1422         }
1423         return TRUE;
1424 }
1425
1426 bool_t
1427 xdr_MKDIR3args (XDR *xdrs, MKDIR3args *objp)
1428 {
1429         register int32_t *buf;
1430
1431          if (!xdr_diropargs3 (xdrs, &objp->where))
1432                  return FALSE;
1433          if (!xdr_sattr3 (xdrs, &objp->attributes))
1434                  return FALSE;
1435         return TRUE;
1436 }
1437
1438 bool_t
1439 xdr_MKDIR3resok (XDR *xdrs, MKDIR3resok *objp)
1440 {
1441         register int32_t *buf;
1442
1443          if (!xdr_post_op_fh3 (xdrs, &objp->obj))
1444                  return FALSE;
1445          if (!xdr_post_op_attr (xdrs, &objp->obj_attributes))
1446                  return FALSE;
1447          if (!xdr_wcc_data (xdrs, &objp->dir_wcc))
1448                  return FALSE;
1449         return TRUE;
1450 }
1451
1452 bool_t
1453 xdr_MKDIR3resfail (XDR *xdrs, MKDIR3resfail *objp)
1454 {
1455         register int32_t *buf;
1456
1457          if (!xdr_wcc_data (xdrs, &objp->dir_wcc))
1458                  return FALSE;
1459         return TRUE;
1460 }
1461
1462 bool_t
1463 xdr_MKDIR3res (XDR *xdrs, MKDIR3res *objp)
1464 {
1465         register int32_t *buf;
1466
1467          if (!xdr_nfsstat3 (xdrs, &objp->status))
1468                  return FALSE;
1469         switch (objp->status) {
1470         case NFS3_OK:
1471                  if (!xdr_MKDIR3resok (xdrs, &objp->MKDIR3res_u.resok))
1472                          return FALSE;
1473                 break;
1474         default:
1475                  if (!xdr_MKDIR3resfail (xdrs, &objp->MKDIR3res_u.resfail))
1476                          return FALSE;
1477                 break;
1478         }
1479         return TRUE;
1480 }
1481
1482 bool_t
1483 xdr_RMDIR3args (XDR *xdrs, RMDIR3args *objp)
1484 {
1485         register int32_t *buf;
1486
1487          if (!xdr_diropargs3 (xdrs, &objp->object))
1488                  return FALSE;
1489         return TRUE;
1490 }
1491
1492 bool_t
1493 xdr_RMDIR3resok (XDR *xdrs, RMDIR3resok *objp)
1494 {
1495         register int32_t *buf;
1496
1497          if (!xdr_wcc_data (xdrs, &objp->dir_wcc))
1498                  return FALSE;
1499         return TRUE;
1500 }
1501
1502 bool_t
1503 xdr_RMDIR3resfail (XDR *xdrs, RMDIR3resfail *objp)
1504 {
1505         register int32_t *buf;
1506
1507          if (!xdr_wcc_data (xdrs, &objp->dir_wcc))
1508                  return FALSE;
1509         return TRUE;
1510 }
1511
1512 bool_t
1513 xdr_RMDIR3res (XDR *xdrs, RMDIR3res *objp)
1514 {
1515         register int32_t *buf;
1516
1517          if (!xdr_nfsstat3 (xdrs, &objp->status))
1518                  return FALSE;
1519         switch (objp->status) {
1520         case NFS3_OK:
1521                  if (!xdr_RMDIR3resok (xdrs, &objp->RMDIR3res_u.resok))
1522                          return FALSE;
1523                 break;
1524         default:
1525                  if (!xdr_RMDIR3resfail (xdrs, &objp->RMDIR3res_u.resfail))
1526                          return FALSE;
1527                 break;
1528         }
1529         return TRUE;
1530 }
1531
1532 bool_t
1533 xdr_RENAME3args (XDR *xdrs, RENAME3args *objp)
1534 {
1535         register int32_t *buf;
1536
1537          if (!xdr_diropargs3 (xdrs, &objp->from))
1538                  return FALSE;
1539          if (!xdr_diropargs3 (xdrs, &objp->to))
1540                  return FALSE;
1541         return TRUE;
1542 }
1543
1544 bool_t
1545 xdr_RENAME3resok (XDR *xdrs, RENAME3resok *objp)
1546 {
1547         register int32_t *buf;
1548
1549          if (!xdr_wcc_data (xdrs, &objp->fromdir_wcc))
1550                  return FALSE;
1551          if (!xdr_wcc_data (xdrs, &objp->todir_wcc))
1552                  return FALSE;
1553         return TRUE;
1554 }
1555
1556 bool_t
1557 xdr_RENAME3resfail (XDR *xdrs, RENAME3resfail *objp)
1558 {
1559         register int32_t *buf;
1560
1561          if (!xdr_wcc_data (xdrs, &objp->fromdir_wcc))
1562                  return FALSE;
1563          if (!xdr_wcc_data (xdrs, &objp->todir_wcc))
1564                  return FALSE;
1565         return TRUE;
1566 }
1567
1568 bool_t
1569 xdr_RENAME3res (XDR *xdrs, RENAME3res *objp)
1570 {
1571         register int32_t *buf;
1572
1573          if (!xdr_nfsstat3 (xdrs, &objp->status))
1574                  return FALSE;
1575         switch (objp->status) {
1576         case NFS3_OK:
1577                  if (!xdr_RENAME3resok (xdrs, &objp->RENAME3res_u.resok))
1578                          return FALSE;
1579                 break;
1580         default:
1581                  if (!xdr_RENAME3resfail (xdrs, &objp->RENAME3res_u.resfail))
1582                          return FALSE;
1583                 break;
1584         }
1585         return TRUE;
1586 }
1587
1588 bool_t
1589 xdr_READDIRPLUS3args (XDR *xdrs, READDIRPLUS3args *objp)
1590 {
1591         register int32_t *buf;
1592
1593          if (!xdr_nfs_fh3 (xdrs, &objp->dir))
1594                  return FALSE;
1595          if (!xdr_cookie3 (xdrs, &objp->cookie))
1596                  return FALSE;
1597          if (!xdr_cookieverf3 (xdrs, objp->cookieverf))
1598                  return FALSE;
1599          if (!xdr_count3 (xdrs, &objp->dircount))
1600                  return FALSE;
1601          if (!xdr_count3 (xdrs, &objp->maxcount))
1602                  return FALSE;
1603         return TRUE;
1604 }
1605
1606 bool_t
1607 xdr_entryplus3 (XDR *xdrs, entryplus3 *objp)
1608 {
1609         register int32_t *buf;
1610
1611          if (!xdr_fileid3 (xdrs, &objp->fileid))
1612                  return FALSE;
1613          if (!xdr_filename3 (xdrs, &objp->name))
1614                  return FALSE;
1615          if (!xdr_cookie3 (xdrs, &objp->cookie))
1616                  return FALSE;
1617          if (!xdr_post_op_attr (xdrs, &objp->name_attributes))
1618                  return FALSE;
1619          if (!xdr_post_op_fh3 (xdrs, &objp->name_handle))
1620                  return FALSE;
1621          if (!xdr_pointer (xdrs, (char **)&objp->nextentry, sizeof (entryplus3), (xdrproc_t) xdr_entryplus3))
1622                  return FALSE;
1623         return TRUE;
1624 }
1625
1626 bool_t
1627 xdr_dirlistplus3 (XDR *xdrs, dirlistplus3 *objp)
1628 {
1629         register int32_t *buf;
1630
1631          if (!xdr_pointer (xdrs, (char **)&objp->entries, sizeof (entryplus3), (xdrproc_t) xdr_entryplus3))
1632                  return FALSE;
1633          if (!xdr_bool (xdrs, &objp->eof))
1634                  return FALSE;
1635         return TRUE;
1636 }
1637
1638 bool_t
1639 xdr_READDIRPLUS3resok (XDR *xdrs, READDIRPLUS3resok *objp)
1640 {
1641         register int32_t *buf;
1642
1643          if (!xdr_post_op_attr (xdrs, &objp->dir_attributes))
1644                  return FALSE;
1645          if (!xdr_cookieverf3 (xdrs, objp->cookieverf))
1646                  return FALSE;
1647          if (!xdr_dirlistplus3 (xdrs, &objp->reply))
1648                  return FALSE;
1649         return TRUE;
1650 }
1651
1652 bool_t
1653 xdr_READDIRPLUS3resfail (XDR *xdrs, READDIRPLUS3resfail *objp)
1654 {
1655         register int32_t *buf;
1656
1657          if (!xdr_post_op_attr (xdrs, &objp->dir_attributes))
1658                  return FALSE;
1659         return TRUE;
1660 }
1661
1662 bool_t
1663 xdr_READDIRPLUS3res (XDR *xdrs, READDIRPLUS3res *objp)
1664 {
1665         register int32_t *buf;
1666
1667          if (!xdr_nfsstat3 (xdrs, &objp->status))
1668                  return FALSE;
1669         switch (objp->status) {
1670         case NFS3_OK:
1671                  if (!xdr_READDIRPLUS3resok (xdrs, &objp->READDIRPLUS3res_u.resok))
1672                          return FALSE;
1673                 break;
1674         default:
1675                  if (!xdr_READDIRPLUS3resfail (xdrs, &objp->READDIRPLUS3res_u.resfail))
1676                          return FALSE;
1677                 break;
1678         }
1679         return TRUE;
1680 }
1681
1682 bool_t
1683 xdr_READDIR3args (XDR *xdrs, READDIR3args *objp)
1684 {
1685         register int32_t *buf;
1686
1687          if (!xdr_nfs_fh3 (xdrs, &objp->dir))
1688                  return FALSE;
1689          if (!xdr_cookie3 (xdrs, &objp->cookie))
1690                  return FALSE;
1691          if (!xdr_cookieverf3 (xdrs, objp->cookieverf))
1692                  return FALSE;
1693          if (!xdr_count3 (xdrs, &objp->count))
1694                  return FALSE;
1695         return TRUE;
1696 }
1697
1698 bool_t
1699 xdr_entry3 (XDR *xdrs, entry3 *objp)
1700 {
1701         register int32_t *buf;
1702
1703          if (!xdr_fileid3 (xdrs, &objp->fileid))
1704                  return FALSE;
1705          if (!xdr_filename3 (xdrs, &objp->name))
1706                  return FALSE;
1707          if (!xdr_cookie3 (xdrs, &objp->cookie))
1708                  return FALSE;
1709          if (!xdr_pointer (xdrs, (char **)&objp->nextentry, sizeof (entry3), (xdrproc_t) xdr_entry3))
1710                  return FALSE;
1711         return TRUE;
1712 }
1713
1714 bool_t
1715 xdr_dirlist3 (XDR *xdrs, dirlist3 *objp)
1716 {
1717         register int32_t *buf;
1718
1719          if (!xdr_pointer (xdrs, (char **)&objp->entries, sizeof (entry3), (xdrproc_t) xdr_entry3))
1720                  return FALSE;
1721          if (!xdr_bool (xdrs, &objp->eof))
1722                  return FALSE;
1723         return TRUE;
1724 }
1725
1726 bool_t
1727 xdr_READDIR3resok (XDR *xdrs, READDIR3resok *objp)
1728 {
1729         register int32_t *buf;
1730
1731          if (!xdr_post_op_attr (xdrs, &objp->dir_attributes))
1732                  return FALSE;
1733          if (!xdr_cookieverf3 (xdrs, objp->cookieverf))
1734                  return FALSE;
1735          if (!xdr_dirlist3 (xdrs, &objp->reply))
1736                  return FALSE;
1737         return TRUE;
1738 }
1739
1740 bool_t
1741 xdr_READDIR3resfail (XDR *xdrs, READDIR3resfail *objp)
1742 {
1743         register int32_t *buf;
1744
1745          if (!xdr_post_op_attr (xdrs, &objp->dir_attributes))
1746                  return FALSE;
1747         return TRUE;
1748 }
1749
1750 bool_t
1751 xdr_READDIR3res (XDR *xdrs, READDIR3res *objp)
1752 {
1753         register int32_t *buf;
1754
1755          if (!xdr_nfsstat3 (xdrs, &objp->status))
1756                  return FALSE;
1757         switch (objp->status) {
1758         case NFS3_OK:
1759                  if (!xdr_READDIR3resok (xdrs, &objp->READDIR3res_u.resok))
1760                          return FALSE;
1761                 break;
1762         default:
1763                  if (!xdr_READDIR3resfail (xdrs, &objp->READDIR3res_u.resfail))
1764                          return FALSE;
1765                 break;
1766         }
1767         return TRUE;
1768 }
1769
1770 bool_t
1771 xdr_LINK3args (XDR *xdrs, LINK3args *objp)
1772 {
1773         register int32_t *buf;
1774
1775          if (!xdr_nfs_fh3 (xdrs, &objp->file))
1776                  return FALSE;
1777          if (!xdr_diropargs3 (xdrs, &objp->link))
1778                  return FALSE;
1779         return TRUE;
1780 }
1781
1782 bool_t
1783 xdr_LINK3resok (XDR *xdrs, LINK3resok *objp)
1784 {
1785         register int32_t *buf;
1786
1787          if (!xdr_post_op_attr (xdrs, &objp->file_attributes))
1788                  return FALSE;
1789          if (!xdr_wcc_data (xdrs, &objp->linkdir_wcc))
1790                  return FALSE;
1791         return TRUE;
1792 }
1793
1794 bool_t
1795 xdr_LINK3resfail (XDR *xdrs, LINK3resfail *objp)
1796 {
1797         register int32_t *buf;
1798
1799          if (!xdr_post_op_attr (xdrs, &objp->file_attributes))
1800                  return FALSE;
1801          if (!xdr_wcc_data (xdrs, &objp->linkdir_wcc))
1802                  return FALSE;
1803         return TRUE;
1804 }
1805
1806 bool_t
1807 xdr_LINK3res (XDR *xdrs, LINK3res *objp)
1808 {
1809         register int32_t *buf;
1810
1811          if (!xdr_nfsstat3 (xdrs, &objp->status))
1812                  return FALSE;
1813         switch (objp->status) {
1814         case NFS3_OK:
1815                  if (!xdr_LINK3resok (xdrs, &objp->LINK3res_u.resok))
1816                          return FALSE;
1817                 break;
1818         default:
1819                  if (!xdr_LINK3resfail (xdrs, &objp->LINK3res_u.resfail))
1820                          return FALSE;
1821                 break;
1822         }
1823         return TRUE;
1824 }
1825
1826 bool_t
1827 xdr_sattrguard3 (XDR *xdrs, sattrguard3 *objp)
1828 {
1829         register int32_t *buf;
1830
1831          if (!xdr_bool (xdrs, &objp->check))
1832                  return FALSE;
1833         switch (objp->check) {
1834         case TRUE:
1835                  if (!xdr_nfstime3 (xdrs, &objp->sattrguard3_u.obj_ctime))
1836                          return FALSE;
1837                 break;
1838         case FALSE:
1839                 break;
1840         default:
1841                 return FALSE;
1842         }
1843         return TRUE;
1844 }
1845
1846 bool_t
1847 xdr_SETATTR3args (XDR *xdrs, SETATTR3args *objp)
1848 {
1849         register int32_t *buf;
1850
1851          if (!xdr_nfs_fh3 (xdrs, &objp->object))
1852                  return FALSE;
1853          if (!xdr_sattr3 (xdrs, &objp->new_attributes))
1854                  return FALSE;
1855          if (!xdr_sattrguard3 (xdrs, &objp->guard))
1856                  return FALSE;
1857         return TRUE;
1858 }
1859
1860 bool_t
1861 xdr_SETATTR3resok (XDR *xdrs, SETATTR3resok *objp)
1862 {
1863         register int32_t *buf;
1864
1865          if (!xdr_wcc_data (xdrs, &objp->obj_wcc))
1866                  return FALSE;
1867         return TRUE;
1868 }
1869
1870 bool_t
1871 xdr_SETATTR3resfail (XDR *xdrs, SETATTR3resfail *objp)
1872 {
1873         register int32_t *buf;
1874
1875          if (!xdr_wcc_data (xdrs, &objp->obj_wcc))
1876                  return FALSE;
1877         return TRUE;
1878 }
1879
1880 bool_t
1881 xdr_SETATTR3res (XDR *xdrs, SETATTR3res *objp)
1882 {
1883         register int32_t *buf;
1884
1885          if (!xdr_nfsstat3 (xdrs, &objp->status))
1886                  return FALSE;
1887         switch (objp->status) {
1888         case NFS3_OK:
1889                  if (!xdr_SETATTR3resok (xdrs, &objp->SETATTR3res_u.resok))
1890                          return FALSE;
1891                 break;
1892         default:
1893                  if (!xdr_SETATTR3resfail (xdrs, &objp->SETATTR3res_u.resfail))
1894                          return FALSE;
1895                 break;
1896         }
1897         return TRUE;
1898 }