1 /*
2  * Please do not edit this file.
3  * It was generated using rpcgen.
4  */
5 
6 #include "gssd_prot.h"
7 
8 #ifndef _KERNEL
9 #include <stdlib.h>
10 #endif /* !_KERNEL */
11 
12 /*
13  * Copyright 2004 Sun Microsystems, Inc.  All rights reserved.
14  * Use is subject to license terms.
15  */
16 
17 /*
18  *  RPC protocol information for gssd, the usermode daemon that
19  *  assists the kernel with gssapi. It is gssd that executes all
20  *  gssapi calls except for some such as gss_sign(), and
21  *  gss_verify(), which are executed in the kernel itself.
22  *
23  *  File generated from gssd.x
24  */
25 
26 #define	NO 0
27 #define	YES 1
28 #define	FOREVER 1
29 
30 #include <sys/types.h>
31 #include <sys/time.h>
32 #include <rpc/auth_sys.h>
33 #ifndef _KERNEL
34 #include <locale.h>
35 #endif /* not _KERNEL */
36 
37 #ifdef _KERNEL
38 extern void killgssd_handle(CLIENT *);
39 extern CLIENT *getgssd_handle(void);
40 #endif /* _KERNEL */
41 
42 
43 bool_t
44 xdr_OM_UINT32(xdrs, objp)
45 	XDR *xdrs;
46 	OM_UINT32 *objp;
47 {
48 
49 	rpc_inline_t *buf;
50 
51 	if (!xdr_u_int(xdrs, objp))
52 		return (FALSE);
53 	return (TRUE);
54 }
55 
56 bool_t
57 xdr_GSS_CTX_ID_T(xdrs, objp)
58 	XDR *xdrs;
59 	GSS_CTX_ID_T *objp;
60 {
61 
62 	rpc_inline_t *buf;
63 
64 	if (!xdr_bytes(xdrs, (char **)&objp->GSS_CTX_ID_T_val, (u_int *) &objp->GSS_CTX_ID_T_len, ~0))
65 		return (FALSE);
66 	return (TRUE);
67 }
68 
69 bool_t
70 xdr_GSS_CRED_ID_T(xdrs, objp)
71 	XDR *xdrs;
72 	GSS_CRED_ID_T *objp;
73 {
74 
75 	rpc_inline_t *buf;
76 
77 	if (!xdr_bytes(xdrs, (char **)&objp->GSS_CRED_ID_T_val, (u_int *) &objp->GSS_CRED_ID_T_len, ~0))
78 		return (FALSE);
79 	return (TRUE);
80 }
81 
82 bool_t
83 xdr_GSS_OID(xdrs, objp)
84 	XDR *xdrs;
85 	GSS_OID *objp;
86 {
87 
88 	rpc_inline_t *buf;
89 
90 	if (!xdr_bytes(xdrs, (char **)&objp->GSS_OID_val, (u_int *) &objp->GSS_OID_len, ~0))
91 		return (FALSE);
92 	return (TRUE);
93 }
94 
95 bool_t
96 xdr_GSS_BUFFER_T(xdrs, objp)
97 	XDR *xdrs;
98 	GSS_BUFFER_T *objp;
99 {
100 
101 	rpc_inline_t *buf;
102 
103 	if (!xdr_bytes(xdrs, (char **)&objp->GSS_BUFFER_T_val, (u_int *) &objp->GSS_BUFFER_T_len, ~0))
104 		return (FALSE);
105 	return (TRUE);
106 }
107 
108 bool_t
109 xdr_GSSCRED_GIDS(xdrs, objp)
110 	XDR *xdrs;
111 	GSSCRED_GIDS *objp;
112 {
113 
114 	rpc_inline_t *buf;
115 
116 	if (!xdr_array(xdrs, (char **)&objp->GSSCRED_GIDS_val, (u_int *) &objp->GSSCRED_GIDS_len, ~0,
117 		sizeof (gid_t), (xdrproc_t)xdr_gid_t))
118 		return (FALSE);
119 	return (TRUE);
120 }
121 
122 bool_t
123 xdr_GSS_OID_SET(xdrs, objp)
124 	XDR *xdrs;
125 	GSS_OID_SET *objp;
126 {
127 
128 	rpc_inline_t *buf;
129 
130 	if (!xdr_array(xdrs, (char **)&objp->GSS_OID_SET_val, (u_int *) &objp->GSS_OID_SET_len, ~0,
131 		sizeof (GSS_OID), (xdrproc_t)xdr_GSS_OID))
132 		return (FALSE);
133 	return (TRUE);
134 }
135 
136 bool_t
137 xdr_GSS_CHANNEL_BINDINGS_STRUCT(xdrs, objp)
138 	XDR *xdrs;
139 	GSS_CHANNEL_BINDINGS_STRUCT *objp;
140 {
141 
142 	rpc_inline_t *buf;
143 
144 	if (!xdr_int(xdrs, &objp->present))
145 		return (FALSE);
146 	if (!xdr_OM_UINT32(xdrs, &objp->initiator_addrtype))
147 		return (FALSE);
148 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->initiator_address))
149 		return (FALSE);
150 	if (!xdr_OM_UINT32(xdrs, &objp->acceptor_addrtype))
151 		return (FALSE);
152 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->acceptor_address))
153 		return (FALSE);
154 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->application_data))
155 		return (FALSE);
156 	return (TRUE);
157 }
158 
159 bool_t
160 xdr_GSS_CHANNEL_BINDINGS(xdrs, objp)
161 	XDR *xdrs;
162 	GSS_CHANNEL_BINDINGS *objp;
163 {
164 
165 	rpc_inline_t *buf;
166 
167 	if (!xdr_GSS_CHANNEL_BINDINGS_STRUCT(xdrs, objp))
168 		return (FALSE);
169 	return (TRUE);
170 }
171 
172 bool_t
173 xdr_gss_acquire_cred_arg(xdrs, objp)
174 	XDR *xdrs;
175 	gss_acquire_cred_arg *objp;
176 {
177 
178 	rpc_inline_t *buf;
179 
180 	if (!xdr_uid_t(xdrs, &objp->uid))
181 		return (FALSE);
182 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->desired_name))
183 		return (FALSE);
184 	if (!xdr_GSS_OID(xdrs, &objp->name_type))
185 		return (FALSE);
186 	if (!xdr_OM_UINT32(xdrs, &objp->time_req))
187 		return (FALSE);
188 	if (!xdr_GSS_OID_SET(xdrs, &objp->desired_mechs))
189 		return (FALSE);
190 	if (!xdr_int(xdrs, &objp->cred_usage))
191 		return (FALSE);
192 	return (TRUE);
193 }
194 
195 bool_t
196 xdr_gss_acquire_cred_res(xdrs, objp)
197 	XDR *xdrs;
198 	gss_acquire_cred_res *objp;
199 {
200 
201 	rpc_inline_t *buf;
202 
203 	if (!xdr_OM_UINT32(xdrs, &objp->minor_status))
204 		return (FALSE);
205 	if (!xdr_GSS_CRED_ID_T(xdrs, &objp->output_cred_handle))
206 		return (FALSE);
207 	if (!xdr_OM_UINT32(xdrs, &objp->gssd_cred_verifier))
208 		return (FALSE);
209 	if (!xdr_GSS_OID_SET(xdrs, &objp->actual_mechs))
210 		return (FALSE);
211 	if (!xdr_OM_UINT32(xdrs, &objp->time_rec))
212 		return (FALSE);
213 	if (!xdr_OM_UINT32(xdrs, &objp->status))
214 		return (FALSE);
215 	return (TRUE);
216 }
217 
218 bool_t
219 xdr_gss_add_cred_arg(xdrs, objp)
220 	XDR *xdrs;
221 	gss_add_cred_arg *objp;
222 {
223 
224 	rpc_inline_t *buf;
225 
226 	if (!xdr_uid_t(xdrs, &objp->uid))
227 		return (FALSE);
228 	if (!xdr_GSS_CRED_ID_T(xdrs, &objp->input_cred_handle))
229 		return (FALSE);
230 	if (!xdr_OM_UINT32(xdrs, &objp->gssd_cred_verifier))
231 		return (FALSE);
232 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->desired_name))
233 		return (FALSE);
234 	if (!xdr_GSS_OID(xdrs, &objp->name_type))
235 		return (FALSE);
236 	if (!xdr_GSS_OID(xdrs, &objp->desired_mech_type))
237 		return (FALSE);
238 	if (!xdr_int(xdrs, &objp->cred_usage))
239 		return (FALSE);
240 	if (!xdr_OM_UINT32(xdrs, &objp->initiator_time_req))
241 		return (FALSE);
242 	if (!xdr_OM_UINT32(xdrs, &objp->acceptor_time_req))
243 		return (FALSE);
244 	return (TRUE);
245 }
246 
247 bool_t
248 xdr_gss_add_cred_res(xdrs, objp)
249 	XDR *xdrs;
250 	gss_add_cred_res *objp;
251 {
252 
253 	rpc_inline_t *buf;
254 
255 	if (!xdr_OM_UINT32(xdrs, &objp->minor_status))
256 		return (FALSE);
257 	if (!xdr_GSS_OID_SET(xdrs, &objp->actual_mechs))
258 		return (FALSE);
259 	if (!xdr_OM_UINT32(xdrs, &objp->initiator_time_rec))
260 		return (FALSE);
261 	if (!xdr_OM_UINT32(xdrs, &objp->acceptor_time_rec))
262 		return (FALSE);
263 	if (!xdr_OM_UINT32(xdrs, &objp->status))
264 		return (FALSE);
265 	return (TRUE);
266 }
267 
268 bool_t
269 xdr_gss_release_cred_arg(xdrs, objp)
270 	XDR *xdrs;
271 	gss_release_cred_arg *objp;
272 {
273 
274 	rpc_inline_t *buf;
275 
276 	if (!xdr_uid_t(xdrs, &objp->uid))
277 		return (FALSE);
278 	if (!xdr_OM_UINT32(xdrs, &objp->gssd_cred_verifier))
279 		return (FALSE);
280 	if (!xdr_GSS_CRED_ID_T(xdrs, &objp->cred_handle))
281 		return (FALSE);
282 	return (TRUE);
283 }
284 
285 bool_t
286 xdr_gss_release_cred_res(xdrs, objp)
287 	XDR *xdrs;
288 	gss_release_cred_res *objp;
289 {
290 
291 	rpc_inline_t *buf;
292 
293 	if (!xdr_OM_UINT32(xdrs, &objp->minor_status))
294 		return (FALSE);
295 	if (!xdr_OM_UINT32(xdrs, &objp->status))
296 		return (FALSE);
297 	return (TRUE);
298 }
299 
300 bool_t
301 xdr_gss_init_sec_context_arg(xdrs, objp)
302 	XDR *xdrs;
303 	gss_init_sec_context_arg *objp;
304 {
305 
306 	rpc_inline_t *buf;
307 
308 	if (!xdr_uid_t(xdrs, &objp->uid))
309 		return (FALSE);
310 	if (!xdr_GSS_CTX_ID_T(xdrs, &objp->context_handle))
311 		return (FALSE);
312 	if (!xdr_OM_UINT32(xdrs, &objp->gssd_context_verifier))
313 		return (FALSE);
314 	if (!xdr_GSS_CRED_ID_T(xdrs, &objp->claimant_cred_handle))
315 		return (FALSE);
316 	if (!xdr_OM_UINT32(xdrs, &objp->gssd_cred_verifier))
317 		return (FALSE);
318 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->target_name))
319 		return (FALSE);
320 	if (!xdr_GSS_OID(xdrs, &objp->name_type))
321 		return (FALSE);
322 	if (!xdr_GSS_OID(xdrs, &objp->mech_type))
323 		return (FALSE);
324 	if (!xdr_int(xdrs, &objp->req_flags))
325 		return (FALSE);
326 	if (!xdr_OM_UINT32(xdrs, &objp->time_req))
327 		return (FALSE);
328 	if (!xdr_GSS_CHANNEL_BINDINGS(xdrs, &objp->input_chan_bindings))
329 		return (FALSE);
330 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->input_token))
331 		return (FALSE);
332 	return (TRUE);
333 }
334 
335 bool_t
336 xdr_gss_init_sec_context_res(xdrs, objp)
337 	XDR *xdrs;
338 	gss_init_sec_context_res *objp;
339 {
340 
341 	rpc_inline_t *buf;
342 
343 	if (!xdr_GSS_CTX_ID_T(xdrs, &objp->context_handle))
344 		return (FALSE);
345 	if (!xdr_OM_UINT32(xdrs, &objp->gssd_context_verifier))
346 		return (FALSE);
347 	if (!xdr_OM_UINT32(xdrs, &objp->minor_status))
348 		return (FALSE);
349 	if (!xdr_GSS_OID(xdrs, &objp->actual_mech_type))
350 		return (FALSE);
351 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->output_token))
352 		return (FALSE);
353 	if (!xdr_OM_UINT32(xdrs, &objp->ret_flags))
354 		return (FALSE);
355 	if (!xdr_OM_UINT32(xdrs, &objp->time_rec))
356 		return (FALSE);
357 	if (!xdr_OM_UINT32(xdrs, &objp->status))
358 		return (FALSE);
359 	return (TRUE);
360 }
361 
362 bool_t
363 xdr_gss_accept_sec_context_arg(xdrs, objp)
364 	XDR *xdrs;
365 	gss_accept_sec_context_arg *objp;
366 {
367 
368 	rpc_inline_t *buf;
369 
370 	if (!xdr_uid_t(xdrs, &objp->uid))
371 		return (FALSE);
372 	if (!xdr_GSS_CTX_ID_T(xdrs, &objp->context_handle))
373 		return (FALSE);
374 	if (!xdr_OM_UINT32(xdrs, &objp->gssd_context_verifier))
375 		return (FALSE);
376 	if (!xdr_GSS_CRED_ID_T(xdrs, &objp->verifier_cred_handle))
377 		return (FALSE);
378 	if (!xdr_OM_UINT32(xdrs, &objp->gssd_cred_verifier))
379 		return (FALSE);
380 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->input_token_buffer))
381 		return (FALSE);
382 	if (!xdr_GSS_CHANNEL_BINDINGS(xdrs, &objp->input_chan_bindings))
383 		return (FALSE);
384 	return (TRUE);
385 }
386 
387 bool_t
388 xdr_gss_accept_sec_context_res(xdrs, objp)
389 	XDR *xdrs;
390 	gss_accept_sec_context_res *objp;
391 {
392 
393 	rpc_inline_t *buf;
394 
395 	if (!xdr_GSS_CTX_ID_T(xdrs, &objp->context_handle))
396 		return (FALSE);
397 	if (!xdr_OM_UINT32(xdrs, &objp->gssd_context_verifier))
398 		return (FALSE);
399 	if (!xdr_OM_UINT32(xdrs, &objp->minor_status))
400 		return (FALSE);
401 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->src_name))
402 		return (FALSE);
403 	if (!xdr_GSS_OID(xdrs, &objp->mech_type))
404 		return (FALSE);
405 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->output_token))
406 		return (FALSE);
407 	if (!xdr_OM_UINT32(xdrs, &objp->ret_flags))
408 		return (FALSE);
409 	if (!xdr_OM_UINT32(xdrs, &objp->time_rec))
410 		return (FALSE);
411 	if (!xdr_GSS_CRED_ID_T(xdrs, &objp->delegated_cred_handle))
412 		return (FALSE);
413 	if (!xdr_OM_UINT32(xdrs, &objp->status))
414 		return (FALSE);
415 	return (TRUE);
416 }
417 
418 bool_t
419 xdr_gss_process_context_token_arg(xdrs, objp)
420 	XDR *xdrs;
421 	gss_process_context_token_arg *objp;
422 {
423 
424 	rpc_inline_t *buf;
425 
426 	if (!xdr_uid_t(xdrs, &objp->uid))
427 		return (FALSE);
428 	if (!xdr_OM_UINT32(xdrs, &objp->gssd_context_verifier))
429 		return (FALSE);
430 	if (!xdr_GSS_CTX_ID_T(xdrs, &objp->context_handle))
431 		return (FALSE);
432 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->token_buffer))
433 		return (FALSE);
434 	return (TRUE);
435 }
436 
437 bool_t
438 xdr_gss_process_context_token_res(xdrs, objp)
439 	XDR *xdrs;
440 	gss_process_context_token_res *objp;
441 {
442 
443 	rpc_inline_t *buf;
444 
445 	if (!xdr_OM_UINT32(xdrs, &objp->minor_status))
446 		return (FALSE);
447 	if (!xdr_OM_UINT32(xdrs, &objp->status))
448 		return (FALSE);
449 	return (TRUE);
450 }
451 
452 bool_t
453 xdr_gss_delete_sec_context_arg(xdrs, objp)
454 	XDR *xdrs;
455 	gss_delete_sec_context_arg *objp;
456 {
457 
458 	rpc_inline_t *buf;
459 
460 	if (!xdr_OM_UINT32(xdrs, &objp->gssd_context_verifier))
461 		return (FALSE);
462 	if (!xdr_GSS_CTX_ID_T(xdrs, &objp->context_handle))
463 		return (FALSE);
464 	return (TRUE);
465 }
466 
467 bool_t
468 xdr_gss_delete_sec_context_res(xdrs, objp)
469 	XDR *xdrs;
470 	gss_delete_sec_context_res *objp;
471 {
472 
473 	rpc_inline_t *buf;
474 
475 	if (!xdr_OM_UINT32(xdrs, &objp->minor_status))
476 		return (FALSE);
477 	if (!xdr_GSS_CTX_ID_T(xdrs, &objp->context_handle))
478 		return (FALSE);
479 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->output_token))
480 		return (FALSE);
481 	if (!xdr_OM_UINT32(xdrs, &objp->status))
482 		return (FALSE);
483 	return (TRUE);
484 }
485 
486 bool_t
487 xdr_gss_export_sec_context_arg(xdrs, objp)
488 	XDR *xdrs;
489 	gss_export_sec_context_arg *objp;
490 {
491 
492 	rpc_inline_t *buf;
493 
494 	if (!xdr_GSS_CTX_ID_T(xdrs, &objp->context_handle))
495 		return (FALSE);
496 	if (!xdr_OM_UINT32(xdrs, &objp->gssd_context_verifier))
497 		return (FALSE);
498 	return (TRUE);
499 }
500 
501 bool_t
502 xdr_gss_export_sec_context_res(xdrs, objp)
503 	XDR *xdrs;
504 	gss_export_sec_context_res *objp;
505 {
506 
507 	rpc_inline_t *buf;
508 
509 	if (!xdr_OM_UINT32(xdrs, &objp->minor_status))
510 		return (FALSE);
511 	if (!xdr_GSS_CTX_ID_T(xdrs, &objp->context_handle))
512 		return (FALSE);
513 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->output_token))
514 		return (FALSE);
515 	if (!xdr_OM_UINT32(xdrs, &objp->status))
516 		return (FALSE);
517 	return (TRUE);
518 }
519 
520 bool_t
521 xdr_gss_import_sec_context_arg(xdrs, objp)
522 	XDR *xdrs;
523 	gss_import_sec_context_arg *objp;
524 {
525 
526 	rpc_inline_t *buf;
527 
528 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->input_token))
529 		return (FALSE);
530 	if (!xdr_OM_UINT32(xdrs, &objp->gssd_context_verifier))
531 		return (FALSE);
532 	return (TRUE);
533 }
534 
535 bool_t
536 xdr_gss_import_sec_context_res(xdrs, objp)
537 	XDR *xdrs;
538 	gss_import_sec_context_res *objp;
539 {
540 
541 	rpc_inline_t *buf;
542 
543 	if (!xdr_OM_UINT32(xdrs, &objp->minor_status))
544 		return (FALSE);
545 	if (!xdr_GSS_CTX_ID_T(xdrs, &objp->context_handle))
546 		return (FALSE);
547 	if (!xdr_OM_UINT32(xdrs, &objp->status))
548 		return (FALSE);
549 	return (TRUE);
550 }
551 
552 bool_t
553 xdr_gss_context_time_arg(xdrs, objp)
554 	XDR *xdrs;
555 	gss_context_time_arg *objp;
556 {
557 
558 	rpc_inline_t *buf;
559 
560 	if (!xdr_uid_t(xdrs, &objp->uid))
561 		return (FALSE);
562 	if (!xdr_OM_UINT32(xdrs, &objp->gssd_context_verifier))
563 		return (FALSE);
564 	if (!xdr_GSS_CTX_ID_T(xdrs, &objp->context_handle))
565 		return (FALSE);
566 	return (TRUE);
567 }
568 
569 bool_t
570 xdr_gss_context_time_res(xdrs, objp)
571 	XDR *xdrs;
572 	gss_context_time_res *objp;
573 {
574 
575 	rpc_inline_t *buf;
576 
577 	if (!xdr_OM_UINT32(xdrs, &objp->minor_status))
578 		return (FALSE);
579 	if (!xdr_OM_UINT32(xdrs, &objp->time_rec))
580 		return (FALSE);
581 	if (!xdr_OM_UINT32(xdrs, &objp->status))
582 		return (FALSE);
583 	return (TRUE);
584 }
585 
586 bool_t
587 xdr_gss_sign_arg(xdrs, objp)
588 	XDR *xdrs;
589 	gss_sign_arg *objp;
590 {
591 
592 	rpc_inline_t *buf;
593 
594 	if (!xdr_OM_UINT32(xdrs, &objp->gssd_context_verifier))
595 		return (FALSE);
596 	if (!xdr_GSS_CTX_ID_T(xdrs, &objp->context_handle))
597 		return (FALSE);
598 	if (!xdr_int(xdrs, &objp->qop_req))
599 		return (FALSE);
600 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->message_buffer))
601 		return (FALSE);
602 	return (TRUE);
603 }
604 
605 bool_t
606 xdr_gss_sign_res(xdrs, objp)
607 	XDR *xdrs;
608 	gss_sign_res *objp;
609 {
610 
611 	rpc_inline_t *buf;
612 
613 	if (!xdr_OM_UINT32(xdrs, &objp->minor_status))
614 		return (FALSE);
615 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->msg_token))
616 		return (FALSE);
617 	if (!xdr_OM_UINT32(xdrs, &objp->status))
618 		return (FALSE);
619 	return (TRUE);
620 }
621 
622 bool_t
623 xdr_gss_verify_arg(xdrs, objp)
624 	XDR *xdrs;
625 	gss_verify_arg *objp;
626 {
627 
628 	rpc_inline_t *buf;
629 
630 	if (!xdr_OM_UINT32(xdrs, &objp->gssd_context_verifier))
631 		return (FALSE);
632 	if (!xdr_GSS_CTX_ID_T(xdrs, &objp->context_handle))
633 		return (FALSE);
634 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->message_buffer))
635 		return (FALSE);
636 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->token_buffer))
637 		return (FALSE);
638 	return (TRUE);
639 }
640 
641 bool_t
642 xdr_gss_verify_res(xdrs, objp)
643 	XDR *xdrs;
644 	gss_verify_res *objp;
645 {
646 
647 	rpc_inline_t *buf;
648 
649 	if (!xdr_OM_UINT32(xdrs, &objp->minor_status))
650 		return (FALSE);
651 	if (!xdr_int(xdrs, &objp->qop_state))
652 		return (FALSE);
653 	if (!xdr_OM_UINT32(xdrs, &objp->status))
654 		return (FALSE);
655 	return (TRUE);
656 }
657 
658 bool_t
659 xdr_gss_seal_arg(xdrs, objp)
660 	XDR *xdrs;
661 	gss_seal_arg *objp;
662 {
663 
664 	rpc_inline_t *buf;
665 
666 	if (!xdr_OM_UINT32(xdrs, &objp->gssd_context_verifier))
667 		return (FALSE);
668 	if (!xdr_GSS_CTX_ID_T(xdrs, &objp->context_handle))
669 		return (FALSE);
670 	if (!xdr_int(xdrs, &objp->conf_req_flag))
671 		return (FALSE);
672 	if (!xdr_int(xdrs, &objp->qop_req))
673 		return (FALSE);
674 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->input_message_buffer))
675 		return (FALSE);
676 	return (TRUE);
677 }
678 
679 bool_t
680 xdr_gss_seal_res(xdrs, objp)
681 	XDR *xdrs;
682 	gss_seal_res *objp;
683 {
684 
685 	rpc_inline_t *buf;
686 
687 	if (!xdr_OM_UINT32(xdrs, &objp->minor_status))
688 		return (FALSE);
689 	if (!xdr_int(xdrs, &objp->conf_state))
690 		return (FALSE);
691 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->output_message_buffer))
692 		return (FALSE);
693 	if (!xdr_OM_UINT32(xdrs, &objp->status))
694 		return (FALSE);
695 	return (TRUE);
696 }
697 
698 bool_t
699 xdr_gss_unseal_arg(xdrs, objp)
700 	XDR *xdrs;
701 	gss_unseal_arg *objp;
702 {
703 
704 	rpc_inline_t *buf;
705 
706 	if (!xdr_OM_UINT32(xdrs, &objp->gssd_context_verifier))
707 		return (FALSE);
708 	if (!xdr_GSS_CTX_ID_T(xdrs, &objp->context_handle))
709 		return (FALSE);
710 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->input_message_buffer))
711 		return (FALSE);
712 	return (TRUE);
713 }
714 
715 bool_t
716 xdr_gss_unseal_res(xdrs, objp)
717 	XDR *xdrs;
718 	gss_unseal_res *objp;
719 {
720 
721 	rpc_inline_t *buf;
722 
723 	if (!xdr_OM_UINT32(xdrs, &objp->minor_status))
724 		return (FALSE);
725 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->output_message_buffer))
726 		return (FALSE);
727 	if (!xdr_int(xdrs, &objp->conf_state))
728 		return (FALSE);
729 	if (!xdr_int(xdrs, &objp->qop_state))
730 		return (FALSE);
731 	if (!xdr_OM_UINT32(xdrs, &objp->status))
732 		return (FALSE);
733 	return (TRUE);
734 }
735 
736 bool_t
737 xdr_gss_display_status_arg(xdrs, objp)
738 	XDR *xdrs;
739 	gss_display_status_arg *objp;
740 {
741 
742 	rpc_inline_t *buf;
743 
744 	if (!xdr_uid_t(xdrs, &objp->uid))
745 		return (FALSE);
746 	if (!xdr_int(xdrs, &objp->status_value))
747 		return (FALSE);
748 	if (!xdr_int(xdrs, &objp->status_type))
749 		return (FALSE);
750 	if (!xdr_GSS_OID(xdrs, &objp->mech_type))
751 		return (FALSE);
752 	if (!xdr_OM_UINT32(xdrs, &objp->message_context))
753 		return (FALSE);
754 	return (TRUE);
755 }
756 
757 bool_t
758 xdr_gss_display_status_res(xdrs, objp)
759 	XDR *xdrs;
760 	gss_display_status_res *objp;
761 {
762 
763 	rpc_inline_t *buf;
764 
765 	if (!xdr_OM_UINT32(xdrs, &objp->minor_status))
766 		return (FALSE);
767 	if (!xdr_int(xdrs, &objp->message_context))
768 		return (FALSE);
769 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->status_string))
770 		return (FALSE);
771 	if (!xdr_OM_UINT32(xdrs, &objp->status))
772 		return (FALSE);
773 	return (TRUE);
774 }
775 /* gss_indicate_mechs_arg is void. This appears in the rpc call def */
776 
777 bool_t
778 xdr_gss_indicate_mechs_res(xdrs, objp)
779 	XDR *xdrs;
780 	gss_indicate_mechs_res *objp;
781 {
782 
783 	rpc_inline_t *buf;
784 
785 	if (!xdr_OM_UINT32(xdrs, &objp->minor_status))
786 		return (FALSE);
787 	if (!xdr_GSS_OID_SET(xdrs, &objp->mech_set))
788 		return (FALSE);
789 	if (!xdr_OM_UINT32(xdrs, &objp->status))
790 		return (FALSE);
791 	return (TRUE);
792 }
793 
794 bool_t
795 xdr_gss_inquire_cred_arg(xdrs, objp)
796 	XDR *xdrs;
797 	gss_inquire_cred_arg *objp;
798 {
799 
800 	rpc_inline_t *buf;
801 
802 	if (!xdr_uid_t(xdrs, &objp->uid))
803 		return (FALSE);
804 	if (!xdr_OM_UINT32(xdrs, &objp->gssd_cred_verifier))
805 		return (FALSE);
806 	if (!xdr_GSS_CRED_ID_T(xdrs, &objp->cred_handle))
807 		return (FALSE);
808 	return (TRUE);
809 }
810 
811 bool_t
812 xdr_gss_inquire_cred_res(xdrs, objp)
813 	XDR *xdrs;
814 	gss_inquire_cred_res *objp;
815 {
816 
817 	rpc_inline_t *buf;
818 
819 	if (!xdr_OM_UINT32(xdrs, &objp->minor_status))
820 		return (FALSE);
821 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->name))
822 		return (FALSE);
823 	if (!xdr_GSS_OID(xdrs, &objp->name_type))
824 		return (FALSE);
825 	if (!xdr_OM_UINT32(xdrs, &objp->lifetime))
826 		return (FALSE);
827 	if (!xdr_int(xdrs, &objp->cred_usage))
828 		return (FALSE);
829 	if (!xdr_GSS_OID_SET(xdrs, &objp->mechanisms))
830 		return (FALSE);
831 	if (!xdr_OM_UINT32(xdrs, &objp->status))
832 		return (FALSE);
833 	return (TRUE);
834 }
835 
836 bool_t
837 xdr_gss_inquire_cred_by_mech_arg(xdrs, objp)
838 	XDR *xdrs;
839 	gss_inquire_cred_by_mech_arg *objp;
840 {
841 
842 	rpc_inline_t *buf;
843 
844 	if (!xdr_uid_t(xdrs, &objp->uid))
845 		return (FALSE);
846 	if (!xdr_OM_UINT32(xdrs, &objp->gssd_cred_verifier))
847 		return (FALSE);
848 	if (!xdr_GSS_CRED_ID_T(xdrs, &objp->cred_handle))
849 		return (FALSE);
850 	if (!xdr_GSS_OID(xdrs, &objp->mech_type))
851 		return (FALSE);
852 	return (TRUE);
853 }
854 
855 bool_t
856 xdr_gss_inquire_cred_by_mech_res(xdrs, objp)
857 	XDR *xdrs;
858 	gss_inquire_cred_by_mech_res *objp;
859 {
860 
861 	rpc_inline_t *buf;
862 
863 	if (!xdr_OM_UINT32(xdrs, &objp->minor_status))
864 		return (FALSE);
865 	if (!xdr_OM_UINT32(xdrs, &objp->status))
866 		return (FALSE);
867 	return (TRUE);
868 }
869 
870 bool_t
871 xdr_gsscred_name_to_unix_cred_arg(xdrs, objp)
872 	XDR *xdrs;
873 	gsscred_name_to_unix_cred_arg *objp;
874 {
875 
876 	rpc_inline_t *buf;
877 
878 	if (!xdr_uid_t(xdrs, &objp->uid))
879 		return (FALSE);
880 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->pname))
881 		return (FALSE);
882 	if (!xdr_GSS_OID(xdrs, &objp->name_type))
883 		return (FALSE);
884 	if (!xdr_GSS_OID(xdrs, &objp->mech_type))
885 		return (FALSE);
886 	return (TRUE);
887 }
888 
889 bool_t
890 xdr_gsscred_name_to_unix_cred_res(xdrs, objp)
891 	XDR *xdrs;
892 	gsscred_name_to_unix_cred_res *objp;
893 {
894 
895 	rpc_inline_t *buf;
896 
897 	if (!xdr_uid_t(xdrs, &objp->uid))
898 		return (FALSE);
899 	if (!xdr_gid_t(xdrs, &objp->gid))
900 		return (FALSE);
901 	if (!xdr_GSSCRED_GIDS(xdrs, &objp->gids))
902 		return (FALSE);
903 	if (!xdr_OM_UINT32(xdrs, &objp->major))
904 		return (FALSE);
905 	return (TRUE);
906 }
907 
908 bool_t
909 xdr_gsscred_expname_to_unix_cred_arg(xdrs, objp)
910 	XDR *xdrs;
911 	gsscred_expname_to_unix_cred_arg *objp;
912 {
913 
914 	rpc_inline_t *buf;
915 
916 	if (!xdr_uid_t(xdrs, &objp->uid))
917 		return (FALSE);
918 	if (!xdr_GSS_BUFFER_T(xdrs, &objp->expname))
919 		return (FALSE);
920 	return (TRUE);
921 }
922 
923 bool_t
924 xdr_gsscred_expname_to_unix_cred_res(xdrs, objp)
925 	XDR *xdrs;
926 	gsscred_expname_to_unix_cred_res *objp;
927 {
928 
929 	rpc_inline_t *buf;
930 
931 	if (!xdr_uid_t(xdrs, &objp->uid))
932 		return (FALSE);
933 	if (!xdr_gid_t(xdrs, &objp->gid))
934 		return (FALSE);
935 	if (!xdr_GSSCRED_GIDS(xdrs, &objp->gids))
936 		return (FALSE);
937 	if (!xdr_OM_UINT32(xdrs, &objp->major))
938 		return (FALSE);
939 	return (TRUE);
940 }
941 
942 bool_t
943 xdr_gss_get_group_info_arg(xdrs, objp)
944 	XDR *xdrs;
945 	gss_get_group_info_arg *objp;
946 {
947 
948 	rpc_inline_t *buf;
949 
950 	if (!xdr_uid_t(xdrs, &objp->uid))
951 		return (FALSE);
952 	if (!xdr_uid_t(xdrs, &objp->puid))
953 		return (FALSE);
954 	return (TRUE);
955 }
956 
957 bool_t
958 xdr_gss_get_group_info_res(xdrs, objp)
959 	XDR *xdrs;
960 	gss_get_group_info_res *objp;
961 {
962 
963 	rpc_inline_t *buf;
964 
965 	if (!xdr_gid_t(xdrs, &objp->gid))
966 		return (FALSE);
967 	if (!xdr_GSSCRED_GIDS(xdrs, &objp->gids))
968 		return (FALSE);
969 	if (!xdr_OM_UINT32(xdrs, &objp->major))
970 		return (FALSE);
971 	return (TRUE);
972 }
973 
974 bool_t
975 xdr_gss_get_kmod_arg(xdrs, objp)
976 	XDR *xdrs;
977 	gss_get_kmod_arg *objp;
978 {
979 
980 	rpc_inline_t *buf;
981 
982 	if (!xdr_GSS_OID(xdrs, &objp->mech_oid))
983 		return (FALSE);
984 	return (TRUE);
985 }
986 
987 bool_t
988 xdr_gss_get_kmod_res(xdrs, objp)
989 	XDR *xdrs;
990 	gss_get_kmod_res *objp;
991 {
992 
993 	rpc_inline_t *buf;
994 
995 	if (!xdr_bool(xdrs, &objp->module_follow))
996 		return (FALSE);
997 	switch (objp->module_follow) {
998 	case TRUE:
999 		if (!xdr_string(xdrs, &objp->gss_get_kmod_res_u.modname, ~0))
1000 			return (FALSE);
1001 		break;
1002 	case FALSE:
1003 		break;
1004 	default:
1005 		return (FALSE);
1006 	}
1007 	return (TRUE);
1008 }
1009