xref: /titanic_51/usr/src/uts/common/rpc/sec/key_prot.c (revision 7c478bd95313f5f23a4c958a745db2134aa03244)
1*7c478bd9Sstevel@tonic-gate /*
2*7c478bd9Sstevel@tonic-gate  * CDDL HEADER START
3*7c478bd9Sstevel@tonic-gate  *
4*7c478bd9Sstevel@tonic-gate  * The contents of this file are subject to the terms of the
5*7c478bd9Sstevel@tonic-gate  * Common Development and Distribution License, Version 1.0 only
6*7c478bd9Sstevel@tonic-gate  * (the "License").  You may not use this file except in compliance
7*7c478bd9Sstevel@tonic-gate  * with the License.
8*7c478bd9Sstevel@tonic-gate  *
9*7c478bd9Sstevel@tonic-gate  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10*7c478bd9Sstevel@tonic-gate  * or http://www.opensolaris.org/os/licensing.
11*7c478bd9Sstevel@tonic-gate  * See the License for the specific language governing permissions
12*7c478bd9Sstevel@tonic-gate  * and limitations under the License.
13*7c478bd9Sstevel@tonic-gate  *
14*7c478bd9Sstevel@tonic-gate  * When distributing Covered Code, include this CDDL HEADER in each
15*7c478bd9Sstevel@tonic-gate  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16*7c478bd9Sstevel@tonic-gate  * If applicable, add the following below this CDDL HEADER, with the
17*7c478bd9Sstevel@tonic-gate  * fields enclosed by brackets "[]" replaced with your own identifying
18*7c478bd9Sstevel@tonic-gate  * information: Portions Copyright [yyyy] [name of copyright owner]
19*7c478bd9Sstevel@tonic-gate  *
20*7c478bd9Sstevel@tonic-gate  * CDDL HEADER END
21*7c478bd9Sstevel@tonic-gate  */
22*7c478bd9Sstevel@tonic-gate /*
23*7c478bd9Sstevel@tonic-gate  * Copyright 2004 Sun Microsystems, Inc.  All rights reserved.
24*7c478bd9Sstevel@tonic-gate  * Use is subject to license terms.
25*7c478bd9Sstevel@tonic-gate  */
26*7c478bd9Sstevel@tonic-gate 
27*7c478bd9Sstevel@tonic-gate /*
28*7c478bd9Sstevel@tonic-gate  * Please do not edit this file.
29*7c478bd9Sstevel@tonic-gate  * It was generated using rpcgen.
30*7c478bd9Sstevel@tonic-gate  */
31*7c478bd9Sstevel@tonic-gate 
32*7c478bd9Sstevel@tonic-gate #pragma ident	"%Z%%M%	%I%	%E% SMI"
33*7c478bd9Sstevel@tonic-gate 
34*7c478bd9Sstevel@tonic-gate #include <rpc/key_prot.h>
35*7c478bd9Sstevel@tonic-gate /* @(#)key_prot.x	1.10 90/01/03 Copyright (c)  1990, 1991 SMI */
36*7c478bd9Sstevel@tonic-gate 
37*7c478bd9Sstevel@tonic-gate /*
38*7c478bd9Sstevel@tonic-gate  * Compiled from key_prot.x using rpcgen.
39*7c478bd9Sstevel@tonic-gate  * DO NOT EDIT THIS FILE!
40*7c478bd9Sstevel@tonic-gate  * This is NOT source code!
41*7c478bd9Sstevel@tonic-gate  */
42*7c478bd9Sstevel@tonic-gate 
43*7c478bd9Sstevel@tonic-gate bool_t
44*7c478bd9Sstevel@tonic-gate xdr_keystatus(XDR *xdrs, keystatus *objp)
45*7c478bd9Sstevel@tonic-gate {
46*7c478bd9Sstevel@tonic-gate 	if (!xdr_enum(xdrs, (enum_t *)objp))
47*7c478bd9Sstevel@tonic-gate 		return (FALSE);
48*7c478bd9Sstevel@tonic-gate 	return (TRUE);
49*7c478bd9Sstevel@tonic-gate }
50*7c478bd9Sstevel@tonic-gate 
51*7c478bd9Sstevel@tonic-gate bool_t
52*7c478bd9Sstevel@tonic-gate xdr_keybuf(XDR *xdrs, keybuf objp)
53*7c478bd9Sstevel@tonic-gate {
54*7c478bd9Sstevel@tonic-gate 	if (!xdr_opaque(xdrs, objp, HEXKEYBYTES))
55*7c478bd9Sstevel@tonic-gate 		return (FALSE);
56*7c478bd9Sstevel@tonic-gate 	return (TRUE);
57*7c478bd9Sstevel@tonic-gate }
58*7c478bd9Sstevel@tonic-gate 
59*7c478bd9Sstevel@tonic-gate bool_t
60*7c478bd9Sstevel@tonic-gate xdr_netnamestr(XDR *xdrs, netnamestr *objp)
61*7c478bd9Sstevel@tonic-gate {
62*7c478bd9Sstevel@tonic-gate 	if (!xdr_string(xdrs, objp, MAXNETNAMELEN))
63*7c478bd9Sstevel@tonic-gate 		return (FALSE);
64*7c478bd9Sstevel@tonic-gate 
65*7c478bd9Sstevel@tonic-gate 	return (TRUE);
66*7c478bd9Sstevel@tonic-gate }
67*7c478bd9Sstevel@tonic-gate 
68*7c478bd9Sstevel@tonic-gate bool_t
69*7c478bd9Sstevel@tonic-gate xdr_cryptkeyarg(XDR *xdrs, cryptkeyarg *objp)
70*7c478bd9Sstevel@tonic-gate {
71*7c478bd9Sstevel@tonic-gate 	if (!xdr_netnamestr(xdrs, &objp->remotename))
72*7c478bd9Sstevel@tonic-gate 		return (FALSE);
73*7c478bd9Sstevel@tonic-gate 	if (!xdr_des_block(xdrs, &objp->deskey))
74*7c478bd9Sstevel@tonic-gate 		return (FALSE);
75*7c478bd9Sstevel@tonic-gate 	return (TRUE);
76*7c478bd9Sstevel@tonic-gate }
77*7c478bd9Sstevel@tonic-gate 
78*7c478bd9Sstevel@tonic-gate bool_t
79*7c478bd9Sstevel@tonic-gate xdr_cryptkeyarg2(XDR *xdrs, cryptkeyarg2 *objp)
80*7c478bd9Sstevel@tonic-gate {
81*7c478bd9Sstevel@tonic-gate 	if (!xdr_netnamestr(xdrs, &objp->remotename))
82*7c478bd9Sstevel@tonic-gate 		return (FALSE);
83*7c478bd9Sstevel@tonic-gate 	if (!xdr_netobj(xdrs, &objp->remotekey))
84*7c478bd9Sstevel@tonic-gate 		return (FALSE);
85*7c478bd9Sstevel@tonic-gate 	if (!xdr_des_block(xdrs, &objp->deskey))
86*7c478bd9Sstevel@tonic-gate 		return (FALSE);
87*7c478bd9Sstevel@tonic-gate 	return (TRUE);
88*7c478bd9Sstevel@tonic-gate }
89*7c478bd9Sstevel@tonic-gate 
90*7c478bd9Sstevel@tonic-gate bool_t
91*7c478bd9Sstevel@tonic-gate xdr_cryptkeyres(XDR *xdrs, cryptkeyres *objp)
92*7c478bd9Sstevel@tonic-gate {
93*7c478bd9Sstevel@tonic-gate 	if (!xdr_keystatus(xdrs, &objp->status))
94*7c478bd9Sstevel@tonic-gate 		return (FALSE);
95*7c478bd9Sstevel@tonic-gate 	switch (objp->status) {
96*7c478bd9Sstevel@tonic-gate 	case KEY_SUCCESS:
97*7c478bd9Sstevel@tonic-gate 		if (!xdr_des_block(xdrs, &objp->cryptkeyres_u.deskey))
98*7c478bd9Sstevel@tonic-gate 			return (FALSE);
99*7c478bd9Sstevel@tonic-gate 		break;
100*7c478bd9Sstevel@tonic-gate 	default:
101*7c478bd9Sstevel@tonic-gate 		break;
102*7c478bd9Sstevel@tonic-gate 	}
103*7c478bd9Sstevel@tonic-gate 	return (TRUE);
104*7c478bd9Sstevel@tonic-gate }
105*7c478bd9Sstevel@tonic-gate 
106*7c478bd9Sstevel@tonic-gate bool_t
107*7c478bd9Sstevel@tonic-gate xdr_unixcred(XDR *xdrs, unixcred *objp)
108*7c478bd9Sstevel@tonic-gate {
109*7c478bd9Sstevel@tonic-gate 	if (!xdr_u_int(xdrs, &objp->uid))
110*7c478bd9Sstevel@tonic-gate 		return (FALSE);
111*7c478bd9Sstevel@tonic-gate 	if (!xdr_u_int(xdrs, &objp->gid))
112*7c478bd9Sstevel@tonic-gate 		return (FALSE);
113*7c478bd9Sstevel@tonic-gate 	if (!xdr_array(xdrs, (char **)&objp->gids.gids_val,
114*7c478bd9Sstevel@tonic-gate 	    (uint_t *)&objp->gids.gids_len, MAXGIDS,
115*7c478bd9Sstevel@tonic-gate 	    sizeof (uint_t), (xdrproc_t)xdr_u_int))
116*7c478bd9Sstevel@tonic-gate 		return (FALSE);
117*7c478bd9Sstevel@tonic-gate 	return (TRUE);
118*7c478bd9Sstevel@tonic-gate }
119*7c478bd9Sstevel@tonic-gate 
120*7c478bd9Sstevel@tonic-gate bool_t
121*7c478bd9Sstevel@tonic-gate xdr_getcredres(XDR *xdrs, getcredres *objp)
122*7c478bd9Sstevel@tonic-gate {
123*7c478bd9Sstevel@tonic-gate 	if (!xdr_keystatus(xdrs, &objp->status))
124*7c478bd9Sstevel@tonic-gate 		return (FALSE);
125*7c478bd9Sstevel@tonic-gate 	switch (objp->status) {
126*7c478bd9Sstevel@tonic-gate 	case KEY_SUCCESS:
127*7c478bd9Sstevel@tonic-gate 		if (!xdr_unixcred(xdrs, &objp->getcredres_u.cred))
128*7c478bd9Sstevel@tonic-gate 			return (FALSE);
129*7c478bd9Sstevel@tonic-gate 		break;
130*7c478bd9Sstevel@tonic-gate 	default:
131*7c478bd9Sstevel@tonic-gate 		break;
132*7c478bd9Sstevel@tonic-gate 	}
133*7c478bd9Sstevel@tonic-gate 	return (TRUE);
134*7c478bd9Sstevel@tonic-gate }
135*7c478bd9Sstevel@tonic-gate 
136*7c478bd9Sstevel@tonic-gate bool_t
137*7c478bd9Sstevel@tonic-gate xdr_key_netstarg(XDR *xdrs, key_netstarg *objp)
138*7c478bd9Sstevel@tonic-gate {
139*7c478bd9Sstevel@tonic-gate 	if (!xdr_keybuf(xdrs, objp->st_priv_key))
140*7c478bd9Sstevel@tonic-gate 		return (FALSE);
141*7c478bd9Sstevel@tonic-gate 	if (!xdr_keybuf(xdrs, objp->st_pub_key))
142*7c478bd9Sstevel@tonic-gate 		return (FALSE);
143*7c478bd9Sstevel@tonic-gate 
144*7c478bd9Sstevel@tonic-gate 
145*7c478bd9Sstevel@tonic-gate 	if (!xdr_netnamestr(xdrs, &objp->st_netname))
146*7c478bd9Sstevel@tonic-gate 		return (FALSE);
147*7c478bd9Sstevel@tonic-gate 
148*7c478bd9Sstevel@tonic-gate 	return (TRUE);
149*7c478bd9Sstevel@tonic-gate }
150*7c478bd9Sstevel@tonic-gate 
151*7c478bd9Sstevel@tonic-gate bool_t
152*7c478bd9Sstevel@tonic-gate xdr_key_netstres(XDR *xdrs, key_netstres *objp)
153*7c478bd9Sstevel@tonic-gate {
154*7c478bd9Sstevel@tonic-gate 	if (!xdr_keystatus(xdrs, &objp->status))
155*7c478bd9Sstevel@tonic-gate 		return (FALSE);
156*7c478bd9Sstevel@tonic-gate 	switch (objp->status) {
157*7c478bd9Sstevel@tonic-gate 	case KEY_SUCCESS:
158*7c478bd9Sstevel@tonic-gate 		if (!xdr_key_netstarg(xdrs, &objp->key_netstres_u.knet))
159*7c478bd9Sstevel@tonic-gate 			return (FALSE);
160*7c478bd9Sstevel@tonic-gate 		break;
161*7c478bd9Sstevel@tonic-gate 	default:
162*7c478bd9Sstevel@tonic-gate 		break;
163*7c478bd9Sstevel@tonic-gate 	}
164*7c478bd9Sstevel@tonic-gate 	return (TRUE);
165*7c478bd9Sstevel@tonic-gate }
166