1 /*
2  * Please do not edit this file.
3  * It was generated using rpcgen.
4  */
5 
6 #include "webnfs.h"
7 
8 #ifndef _KERNEL
9 #include <stdlib.h>
10 #endif /* !_KERNEL */
11 
12 #pragma ident	"%Z%%M%	%I%	%E% SMI"
13 
14 bool_t
15 xdr_wnl_stat(XDR *xdrs, wnl_stat *objp)
16 {
17 
18 	rpc_inline_t *buf;
19 
20 	if (!xdr_enum(xdrs, (enum_t *)objp))
21 		return (FALSE);
22 	return (TRUE);
23 }
24 
25 bool_t
26 xdr_wnl_ftype(XDR *xdrs, wnl_ftype *objp)
27 {
28 
29 	rpc_inline_t *buf;
30 
31 	if (!xdr_enum(xdrs, (enum_t *)objp))
32 		return (FALSE);
33 	return (TRUE);
34 }
35 
36 bool_t
37 xdr_wnl_fh(XDR *xdrs, wnl_fh *objp)
38 {
39 
40 	rpc_inline_t *buf;
41 
42 	if (!xdr_opaque(xdrs, objp->data, WNL_FHSIZE))
43 		return (FALSE);
44 	return (TRUE);
45 }
46 
47 bool_t
48 xdr_wnl_time(XDR *xdrs, wnl_time *objp)
49 {
50 
51 	rpc_inline_t *buf;
52 
53 	if (!xdr_u_int(xdrs, &objp->seconds))
54 		return (FALSE);
55 	if (!xdr_u_int(xdrs, &objp->useconds))
56 		return (FALSE);
57 	return (TRUE);
58 }
59 
60 bool_t
61 xdr_wnl_fattr(XDR *xdrs, wnl_fattr *objp)
62 {
63 
64 	rpc_inline_t *buf;
65 
66 
67 	if (xdrs->x_op == XDR_ENCODE) {
68 		if (!xdr_wnl_ftype(xdrs, &objp->type))
69 			return (FALSE);
70 		buf = XDR_INLINE(xdrs, 10 * BYTES_PER_XDR_UNIT);
71 		if (buf == NULL) {
72 			if (!xdr_u_int(xdrs, &objp->mode))
73 				return (FALSE);
74 			if (!xdr_u_int(xdrs, &objp->nlink))
75 				return (FALSE);
76 			if (!xdr_u_int(xdrs, &objp->uid))
77 				return (FALSE);
78 			if (!xdr_u_int(xdrs, &objp->gid))
79 				return (FALSE);
80 			if (!xdr_u_int(xdrs, &objp->size))
81 				return (FALSE);
82 			if (!xdr_u_int(xdrs, &objp->blocksize))
83 				return (FALSE);
84 			if (!xdr_u_int(xdrs, &objp->rdev))
85 				return (FALSE);
86 			if (!xdr_u_int(xdrs, &objp->blocks))
87 				return (FALSE);
88 			if (!xdr_u_int(xdrs, &objp->fsid))
89 				return (FALSE);
90 			if (!xdr_u_int(xdrs, &objp->fileid))
91 				return (FALSE);
92 		} else {
93 #if defined(_LP64) || defined(_KERNEL)
94 			IXDR_PUT_U_INT32(buf, objp->mode);
95 			IXDR_PUT_U_INT32(buf, objp->nlink);
96 			IXDR_PUT_U_INT32(buf, objp->uid);
97 			IXDR_PUT_U_INT32(buf, objp->gid);
98 			IXDR_PUT_U_INT32(buf, objp->size);
99 			IXDR_PUT_U_INT32(buf, objp->blocksize);
100 			IXDR_PUT_U_INT32(buf, objp->rdev);
101 			IXDR_PUT_U_INT32(buf, objp->blocks);
102 			IXDR_PUT_U_INT32(buf, objp->fsid);
103 			IXDR_PUT_U_INT32(buf, objp->fileid);
104 #else
105 			IXDR_PUT_U_LONG(buf, objp->mode);
106 			IXDR_PUT_U_LONG(buf, objp->nlink);
107 			IXDR_PUT_U_LONG(buf, objp->uid);
108 			IXDR_PUT_U_LONG(buf, objp->gid);
109 			IXDR_PUT_U_LONG(buf, objp->size);
110 			IXDR_PUT_U_LONG(buf, objp->blocksize);
111 			IXDR_PUT_U_LONG(buf, objp->rdev);
112 			IXDR_PUT_U_LONG(buf, objp->blocks);
113 			IXDR_PUT_U_LONG(buf, objp->fsid);
114 			IXDR_PUT_U_LONG(buf, objp->fileid);
115 #endif
116 		}
117 		if (!xdr_wnl_time(xdrs, &objp->atime))
118 			return (FALSE);
119 		if (!xdr_wnl_time(xdrs, &objp->mtime))
120 			return (FALSE);
121 		if (!xdr_wnl_time(xdrs, &objp->ctime))
122 			return (FALSE);
123 		return (TRUE);
124 	} else if (xdrs->x_op == XDR_DECODE) {
125 		if (!xdr_wnl_ftype(xdrs, &objp->type))
126 			return (FALSE);
127 		buf = XDR_INLINE(xdrs, 10 * BYTES_PER_XDR_UNIT);
128 		if (buf == NULL) {
129 			if (!xdr_u_int(xdrs, &objp->mode))
130 				return (FALSE);
131 			if (!xdr_u_int(xdrs, &objp->nlink))
132 				return (FALSE);
133 			if (!xdr_u_int(xdrs, &objp->uid))
134 				return (FALSE);
135 			if (!xdr_u_int(xdrs, &objp->gid))
136 				return (FALSE);
137 			if (!xdr_u_int(xdrs, &objp->size))
138 				return (FALSE);
139 			if (!xdr_u_int(xdrs, &objp->blocksize))
140 				return (FALSE);
141 			if (!xdr_u_int(xdrs, &objp->rdev))
142 				return (FALSE);
143 			if (!xdr_u_int(xdrs, &objp->blocks))
144 				return (FALSE);
145 			if (!xdr_u_int(xdrs, &objp->fsid))
146 				return (FALSE);
147 			if (!xdr_u_int(xdrs, &objp->fileid))
148 				return (FALSE);
149 		} else {
150 #if defined(_LP64) || defined(_KERNEL)
151 			objp->mode = IXDR_GET_U_INT32(buf);
152 			objp->nlink = IXDR_GET_U_INT32(buf);
153 			objp->uid = IXDR_GET_U_INT32(buf);
154 			objp->gid = IXDR_GET_U_INT32(buf);
155 			objp->size = IXDR_GET_U_INT32(buf);
156 			objp->blocksize = IXDR_GET_U_INT32(buf);
157 			objp->rdev = IXDR_GET_U_INT32(buf);
158 			objp->blocks = IXDR_GET_U_INT32(buf);
159 			objp->fsid = IXDR_GET_U_INT32(buf);
160 			objp->fileid = IXDR_GET_U_INT32(buf);
161 #else
162 			objp->mode = IXDR_GET_U_LONG(buf);
163 			objp->nlink = IXDR_GET_U_LONG(buf);
164 			objp->uid = IXDR_GET_U_LONG(buf);
165 			objp->gid = IXDR_GET_U_LONG(buf);
166 			objp->size = IXDR_GET_U_LONG(buf);
167 			objp->blocksize = IXDR_GET_U_LONG(buf);
168 			objp->rdev = IXDR_GET_U_LONG(buf);
169 			objp->blocks = IXDR_GET_U_LONG(buf);
170 			objp->fsid = IXDR_GET_U_LONG(buf);
171 			objp->fileid = IXDR_GET_U_LONG(buf);
172 #endif
173 		}
174 		if (!xdr_wnl_time(xdrs, &objp->atime))
175 			return (FALSE);
176 		if (!xdr_wnl_time(xdrs, &objp->mtime))
177 			return (FALSE);
178 		if (!xdr_wnl_time(xdrs, &objp->ctime))
179 			return (FALSE);
180 		return (TRUE);
181 	}
182 
183 	if (!xdr_wnl_ftype(xdrs, &objp->type))
184 		return (FALSE);
185 	if (!xdr_u_int(xdrs, &objp->mode))
186 		return (FALSE);
187 	if (!xdr_u_int(xdrs, &objp->nlink))
188 		return (FALSE);
189 	if (!xdr_u_int(xdrs, &objp->uid))
190 		return (FALSE);
191 	if (!xdr_u_int(xdrs, &objp->gid))
192 		return (FALSE);
193 	if (!xdr_u_int(xdrs, &objp->size))
194 		return (FALSE);
195 	if (!xdr_u_int(xdrs, &objp->blocksize))
196 		return (FALSE);
197 	if (!xdr_u_int(xdrs, &objp->rdev))
198 		return (FALSE);
199 	if (!xdr_u_int(xdrs, &objp->blocks))
200 		return (FALSE);
201 	if (!xdr_u_int(xdrs, &objp->fsid))
202 		return (FALSE);
203 	if (!xdr_u_int(xdrs, &objp->fileid))
204 		return (FALSE);
205 	if (!xdr_wnl_time(xdrs, &objp->atime))
206 		return (FALSE);
207 	if (!xdr_wnl_time(xdrs, &objp->mtime))
208 		return (FALSE);
209 	if (!xdr_wnl_time(xdrs, &objp->ctime))
210 		return (FALSE);
211 	return (TRUE);
212 }
213 
214 bool_t
215 xdr_wnl_filename(XDR *xdrs, wnl_filename *objp)
216 {
217 
218 	rpc_inline_t *buf;
219 
220 	if (!xdr_string(xdrs, objp, WNL_MAXNAMLEN))
221 		return (FALSE);
222 	return (TRUE);
223 }
224 
225 bool_t
226 xdr_wnl_diropargs(XDR *xdrs, wnl_diropargs *objp)
227 {
228 
229 	rpc_inline_t *buf;
230 
231 	if (!xdr_wnl_fh(xdrs, &objp->dir))
232 		return (FALSE);
233 	if (!xdr_wnl_filename(xdrs, &objp->name))
234 		return (FALSE);
235 	return (TRUE);
236 }
237 
238 bool_t
239 xdr_wnl_diropokres(XDR *xdrs, wnl_diropokres *objp)
240 {
241 
242 	rpc_inline_t *buf;
243 
244 	if (!xdr_wnl_fh(xdrs, &objp->file))
245 		return (FALSE);
246 	if (!xdr_wnl_fattr(xdrs, &objp->attributes))
247 		return (FALSE);
248 	return (TRUE);
249 }
250 
251 bool_t
252 xdr_wnl_diropres(XDR *xdrs, wnl_diropres *objp)
253 {
254 
255 	rpc_inline_t *buf;
256 
257 	if (!xdr_wnl_stat(xdrs, &objp->status))
258 		return (FALSE);
259 	switch (objp->status) {
260 	case WNL_OK:
261 		if (!xdr_wnl_diropokres(xdrs, &objp->wnl_diropres_u.wnl_diropres))
262 			return (FALSE);
263 		break;
264 	}
265 	return (TRUE);
266 }
267 
268 bool_t
269 xdr_wnl_uint64(XDR *xdrs, wnl_uint64 *objp)
270 {
271 
272 	rpc_inline_t *buf;
273 
274 	if (!xdr_u_longlong_t(xdrs, objp))
275 		return (FALSE);
276 	return (TRUE);
277 }
278 
279 bool_t
280 xdr_wnl_int64(XDR *xdrs, wnl_int64 *objp)
281 {
282 
283 	rpc_inline_t *buf;
284 
285 	if (!xdr_longlong_t(xdrs, objp))
286 		return (FALSE);
287 	return (TRUE);
288 }
289 
290 bool_t
291 xdr_wnl_uint32(XDR *xdrs, wnl_uint32 *objp)
292 {
293 
294 	rpc_inline_t *buf;
295 
296 	if (!xdr_u_int(xdrs, objp))
297 		return (FALSE);
298 	return (TRUE);
299 }
300 
301 bool_t
302 xdr_wnl_filename3(XDR *xdrs, wnl_filename3 *objp)
303 {
304 
305 	rpc_inline_t *buf;
306 
307 	if (!xdr_string(xdrs, objp, ~0))
308 		return (FALSE);
309 	return (TRUE);
310 }
311 
312 bool_t
313 xdr_wnl_fileid3(XDR *xdrs, wnl_fileid3 *objp)
314 {
315 
316 	rpc_inline_t *buf;
317 
318 	if (!xdr_wnl_uint64(xdrs, objp))
319 		return (FALSE);
320 	return (TRUE);
321 }
322 
323 bool_t
324 xdr_wnl_uid3(XDR *xdrs, wnl_uid3 *objp)
325 {
326 
327 	rpc_inline_t *buf;
328 
329 	if (!xdr_wnl_uint32(xdrs, objp))
330 		return (FALSE);
331 	return (TRUE);
332 }
333 
334 bool_t
335 xdr_wnl_gid3(XDR *xdrs, wnl_gid3 *objp)
336 {
337 
338 	rpc_inline_t *buf;
339 
340 	if (!xdr_wnl_uint32(xdrs, objp))
341 		return (FALSE);
342 	return (TRUE);
343 }
344 
345 bool_t
346 xdr_wnl_size3(XDR *xdrs, wnl_size3 *objp)
347 {
348 
349 	rpc_inline_t *buf;
350 
351 	if (!xdr_wnl_uint64(xdrs, objp))
352 		return (FALSE);
353 	return (TRUE);
354 }
355 
356 bool_t
357 xdr_wnl_mode3(XDR *xdrs, wnl_mode3 *objp)
358 {
359 
360 	rpc_inline_t *buf;
361 
362 	if (!xdr_wnl_uint32(xdrs, objp))
363 		return (FALSE);
364 	return (TRUE);
365 }
366 
367 bool_t
368 xdr_wnl_stat3(XDR *xdrs, wnl_stat3 *objp)
369 {
370 
371 	rpc_inline_t *buf;
372 
373 	if (!xdr_enum(xdrs, (enum_t *)objp))
374 		return (FALSE);
375 	return (TRUE);
376 }
377 
378 bool_t
379 xdr_wnl_ftype3(XDR *xdrs, wnl_ftype3 *objp)
380 {
381 
382 	rpc_inline_t *buf;
383 
384 	if (!xdr_enum(xdrs, (enum_t *)objp))
385 		return (FALSE);
386 	return (TRUE);
387 }
388 
389 bool_t
390 xdr_wnl_specdata3(XDR *xdrs, wnl_specdata3 *objp)
391 {
392 
393 	rpc_inline_t *buf;
394 
395 	if (!xdr_wnl_uint32(xdrs, &objp->specdata1))
396 		return (FALSE);
397 	if (!xdr_wnl_uint32(xdrs, &objp->specdata2))
398 		return (FALSE);
399 	return (TRUE);
400 }
401 
402 bool_t
403 xdr_wnl_fh3(XDR *xdrs, wnl_fh3 *objp)
404 {
405 
406 	rpc_inline_t *buf;
407 
408 	if (!xdr_bytes(xdrs, (char **)&objp->data.data_val, (u_int *) &objp->data.data_len, WNL3_FHSIZE))
409 		return (FALSE);
410 	return (TRUE);
411 }
412 
413 bool_t
414 xdr_wnl_time3(XDR *xdrs, wnl_time3 *objp)
415 {
416 
417 	rpc_inline_t *buf;
418 
419 	if (!xdr_wnl_uint32(xdrs, &objp->seconds))
420 		return (FALSE);
421 	if (!xdr_wnl_uint32(xdrs, &objp->nseconds))
422 		return (FALSE);
423 	return (TRUE);
424 }
425 
426 bool_t
427 xdr_wnl_fattr3(XDR *xdrs, wnl_fattr3 *objp)
428 {
429 
430 	rpc_inline_t *buf;
431 
432 	if (!xdr_wnl_ftype3(xdrs, &objp->type))
433 		return (FALSE);
434 	if (!xdr_wnl_mode3(xdrs, &objp->mode))
435 		return (FALSE);
436 	if (!xdr_wnl_uint32(xdrs, &objp->nlink))
437 		return (FALSE);
438 	if (!xdr_wnl_uid3(xdrs, &objp->uid))
439 		return (FALSE);
440 	if (!xdr_wnl_gid3(xdrs, &objp->gid))
441 		return (FALSE);
442 	if (!xdr_wnl_size3(xdrs, &objp->size))
443 		return (FALSE);
444 	if (!xdr_wnl_size3(xdrs, &objp->used))
445 		return (FALSE);
446 	if (!xdr_wnl_specdata3(xdrs, &objp->rdev))
447 		return (FALSE);
448 	if (!xdr_wnl_uint64(xdrs, &objp->fsid))
449 		return (FALSE);
450 	if (!xdr_wnl_fileid3(xdrs, &objp->fileid))
451 		return (FALSE);
452 	if (!xdr_wnl_time3(xdrs, &objp->atime))
453 		return (FALSE);
454 	if (!xdr_wnl_time3(xdrs, &objp->mtime))
455 		return (FALSE);
456 	if (!xdr_wnl_time3(xdrs, &objp->ctime))
457 		return (FALSE);
458 	return (TRUE);
459 }
460 
461 bool_t
462 xdr_wnl_post_op_attr(XDR *xdrs, wnl_post_op_attr *objp)
463 {
464 
465 	rpc_inline_t *buf;
466 
467 	if (!xdr_bool(xdrs, &objp->attributes_follow))
468 		return (FALSE);
469 	switch (objp->attributes_follow) {
470 	case TRUE:
471 		if (!xdr_wnl_fattr3(xdrs, &objp->wnl_post_op_attr_u.attributes))
472 			return (FALSE);
473 		break;
474 	case FALSE:
475 		break;
476 	default:
477 		return (FALSE);
478 	}
479 	return (TRUE);
480 }
481 
482 bool_t
483 xdr_wln_post_op_fh3(XDR *xdrs, wln_post_op_fh3 *objp)
484 {
485 
486 	rpc_inline_t *buf;
487 
488 	if (!xdr_bool(xdrs, &objp->handle_follows))
489 		return (FALSE);
490 	switch (objp->handle_follows) {
491 	case TRUE:
492 		if (!xdr_wnl_fh3(xdrs, &objp->wln_post_op_fh3_u.handle))
493 			return (FALSE);
494 		break;
495 	case FALSE:
496 		break;
497 	default:
498 		return (FALSE);
499 	}
500 	return (TRUE);
501 }
502 
503 bool_t
504 xdr_wnl_diropargs3(XDR *xdrs, wnl_diropargs3 *objp)
505 {
506 
507 	rpc_inline_t *buf;
508 
509 	if (!xdr_wnl_fh3(xdrs, &objp->dir))
510 		return (FALSE);
511 	if (!xdr_wnl_filename3(xdrs, &objp->name))
512 		return (FALSE);
513 	return (TRUE);
514 }
515 
516 bool_t
517 xdr_WNL_LOOKUP3args(XDR *xdrs, WNL_LOOKUP3args *objp)
518 {
519 
520 	rpc_inline_t *buf;
521 
522 	if (!xdr_wnl_diropargs3(xdrs, &objp->what))
523 		return (FALSE);
524 	return (TRUE);
525 }
526 
527 bool_t
528 xdr_WNL_LOOKUP3resok(XDR *xdrs, WNL_LOOKUP3resok *objp)
529 {
530 
531 	rpc_inline_t *buf;
532 
533 	if (!xdr_wnl_fh3(xdrs, &objp->object))
534 		return (FALSE);
535 	if (!xdr_wnl_post_op_attr(xdrs, &objp->obj_attributes))
536 		return (FALSE);
537 	if (!xdr_wnl_post_op_attr(xdrs, &objp->dir_attributes))
538 		return (FALSE);
539 	return (TRUE);
540 }
541 
542 bool_t
543 xdr_WNL_LOOKUP3resfail(XDR *xdrs, WNL_LOOKUP3resfail *objp)
544 {
545 
546 	rpc_inline_t *buf;
547 
548 	if (!xdr_wnl_post_op_attr(xdrs, &objp->dir_attributes))
549 		return (FALSE);
550 	return (TRUE);
551 }
552 
553 bool_t
554 xdr_WNL_LOOKUP3res(XDR *xdrs, WNL_LOOKUP3res *objp)
555 {
556 
557 	rpc_inline_t *buf;
558 
559 	if (!xdr_wnl_stat3(xdrs, &objp->status))
560 		return (FALSE);
561 	switch (objp->status) {
562 	case WNL3_OK:
563 		if (!xdr_WNL_LOOKUP3resok(xdrs, &objp->WNL_LOOKUP3res_u.res_ok))
564 			return (FALSE);
565 		break;
566 	default:
567 		if (!xdr_WNL_LOOKUP3resfail(xdrs, &objp->WNL_LOOKUP3res_u.res_fail))
568 			return (FALSE);
569 		break;
570 	}
571 	return (TRUE);
572 }
573 
574 bool_t
575 xdr_snego_t(XDR *xdrs, snego_t *objp)
576 {
577 
578 	rpc_inline_t *buf;
579 
580 	int i;
581 
582 	if (xdrs->x_op == XDR_ENCODE) {
583 		buf = XDR_INLINE(xdrs, (1 + (MAX_FLAVORS)) * BYTES_PER_XDR_UNIT);
584 		if (buf == NULL) {
585 			if (!xdr_int(xdrs, &objp->cnt))
586 				return (FALSE);
587 			if (!xdr_vector(xdrs, (char *)objp->array, MAX_FLAVORS,
588 				sizeof (int), (xdrproc_t)xdr_int))
589 				return (FALSE);
590 		} else {
591 #if defined(_LP64) || defined(_KERNEL)
592 			IXDR_PUT_INT32(buf, objp->cnt);
593 			{
594 				int *genp;
595 
596 				for (i = 0, genp = objp->array;
597 					i < MAX_FLAVORS; i++) {
598 					IXDR_PUT_INT32(buf, *genp++);
599 				}
600 			}
601 #else
602 			IXDR_PUT_LONG(buf, objp->cnt);
603 			{
604 				int *genp;
605 
606 				for (i = 0, genp = objp->array;
607 					i < MAX_FLAVORS; i++) {
608 					IXDR_PUT_LONG(buf, *genp++);
609 				}
610 			}
611 #endif
612 		}
613 		return (TRUE);
614 	} else if (xdrs->x_op == XDR_DECODE) {
615 		buf = XDR_INLINE(xdrs, (1 + (MAX_FLAVORS)) * BYTES_PER_XDR_UNIT);
616 		if (buf == NULL) {
617 			if (!xdr_int(xdrs, &objp->cnt))
618 				return (FALSE);
619 			if (!xdr_vector(xdrs, (char *)objp->array, MAX_FLAVORS,
620 				sizeof (int), (xdrproc_t)xdr_int))
621 				return (FALSE);
622 		} else {
623 #if defined(_LP64) || defined(_KERNEL)
624 			objp->cnt = IXDR_GET_INT32(buf);
625 			{
626 				int *genp;
627 
628 				for (i = 0, genp = objp->array;
629 					i < MAX_FLAVORS; i++) {
630 					*genp++ = IXDR_GET_INT32(buf);
631 				}
632 			}
633 #else
634 			objp->cnt = IXDR_GET_LONG(buf);
635 			{
636 				int *genp;
637 
638 				for (i = 0, genp = objp->array;
639 					i < MAX_FLAVORS; i++) {
640 					*genp++ = IXDR_GET_LONG(buf);
641 				}
642 			}
643 #endif
644 		}
645 		return (TRUE);
646 	}
647 
648 	if (!xdr_int(xdrs, &objp->cnt))
649 		return (FALSE);
650 	if (!xdr_vector(xdrs, (char *)objp->array, MAX_FLAVORS,
651 		sizeof (int), (xdrproc_t)xdr_int))
652 		return (FALSE);
653 	return (TRUE);
654 }
655 
656 bool_t
657 xdr_snego_stat(XDR *xdrs, snego_stat *objp)
658 {
659 
660 	rpc_inline_t *buf;
661 
662 	if (!xdr_enum(xdrs, (enum_t *)objp))
663 		return (FALSE);
664 	return (TRUE);
665 }
666