xref: /utopia/UTPA2-700.0.x/projects/tools/lint/mips-linux-gnu_include/rpcsvc/key_prot.h (revision 53ee8cc121a030b8d368113ac3e966b4705770ef)
1*53ee8cc1Swenshuai.xi /*
2*53ee8cc1Swenshuai.xi  * Please do not edit this file.
3*53ee8cc1Swenshuai.xi  * It was generated using rpcgen.
4*53ee8cc1Swenshuai.xi  */
5*53ee8cc1Swenshuai.xi 
6*53ee8cc1Swenshuai.xi #ifndef _KEY_PROT_H_RPCGEN
7*53ee8cc1Swenshuai.xi #define _KEY_PROT_H_RPCGEN
8*53ee8cc1Swenshuai.xi 
9*53ee8cc1Swenshuai.xi #include <rpc/rpc.h>
10*53ee8cc1Swenshuai.xi 
11*53ee8cc1Swenshuai.xi 
12*53ee8cc1Swenshuai.xi #ifdef __cplusplus
13*53ee8cc1Swenshuai.xi extern "C" {
14*53ee8cc1Swenshuai.xi #endif
15*53ee8cc1Swenshuai.xi 
16*53ee8cc1Swenshuai.xi /*
17*53ee8cc1Swenshuai.xi  * Sun RPC is a product of Sun Microsystems, Inc. and is provided for
18*53ee8cc1Swenshuai.xi  * unrestricted use provided that this legend is included on all tape
19*53ee8cc1Swenshuai.xi  * media and as a part of the software program in whole or part.  Users
20*53ee8cc1Swenshuai.xi  * may copy or modify Sun RPC without charge, but are not authorized
21*53ee8cc1Swenshuai.xi  * to license or distribute it to anyone else except as part of a product or
22*53ee8cc1Swenshuai.xi  * program developed by the user.
23*53ee8cc1Swenshuai.xi  *
24*53ee8cc1Swenshuai.xi  * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE
25*53ee8cc1Swenshuai.xi  * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR
26*53ee8cc1Swenshuai.xi  * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE.
27*53ee8cc1Swenshuai.xi  *
28*53ee8cc1Swenshuai.xi  * Sun RPC is provided with no support and without any obligation on the
29*53ee8cc1Swenshuai.xi  * part of Sun Microsystems, Inc. to assist in its use, correction,
30*53ee8cc1Swenshuai.xi  * modification or enhancement.
31*53ee8cc1Swenshuai.xi  *
32*53ee8cc1Swenshuai.xi  * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE
33*53ee8cc1Swenshuai.xi  * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC
34*53ee8cc1Swenshuai.xi  * OR ANY PART THEREOF.
35*53ee8cc1Swenshuai.xi  *
36*53ee8cc1Swenshuai.xi  * In no event will Sun Microsystems, Inc. be liable for any lost revenue
37*53ee8cc1Swenshuai.xi  * or profits or other special, indirect and consequential damages, even if
38*53ee8cc1Swenshuai.xi  * Sun has been advised of the possibility of such damages.
39*53ee8cc1Swenshuai.xi  *
40*53ee8cc1Swenshuai.xi  * Sun Microsystems, Inc.
41*53ee8cc1Swenshuai.xi  * 2550 Garcia Avenue
42*53ee8cc1Swenshuai.xi  * Mountain View, California  94043
43*53ee8cc1Swenshuai.xi  */
44*53ee8cc1Swenshuai.xi #if 0
45*53ee8cc1Swenshuai.xi #pragma ident "@(#)key_prot.x	1.7	94/04/29 SMI"
46*53ee8cc1Swenshuai.xi #endif
47*53ee8cc1Swenshuai.xi 
48*53ee8cc1Swenshuai.xi /* Copyright (c)  1990, 1991 Sun Microsystems, Inc. */
49*53ee8cc1Swenshuai.xi 
50*53ee8cc1Swenshuai.xi /*
51*53ee8cc1Swenshuai.xi  * Compiled from key_prot.x using rpcgen.
52*53ee8cc1Swenshuai.xi  * DO NOT EDIT THIS FILE!
53*53ee8cc1Swenshuai.xi  * This is NOT source code!
54*53ee8cc1Swenshuai.xi  */
55*53ee8cc1Swenshuai.xi #define PROOT 3
56*53ee8cc1Swenshuai.xi #define HEXMODULUS "d4a0ba0250b6fd2ec626e7efd637df76c716e22d0944b88b"
57*53ee8cc1Swenshuai.xi #define HEXKEYBYTES 48
58*53ee8cc1Swenshuai.xi #define KEYSIZE 192
59*53ee8cc1Swenshuai.xi #define KEYBYTES 24
60*53ee8cc1Swenshuai.xi #define KEYCHECKSUMSIZE 16
61*53ee8cc1Swenshuai.xi 
62*53ee8cc1Swenshuai.xi enum keystatus {
63*53ee8cc1Swenshuai.xi 	KEY_SUCCESS = 0,
64*53ee8cc1Swenshuai.xi 	KEY_NOSECRET = 1,
65*53ee8cc1Swenshuai.xi 	KEY_UNKNOWN = 2,
66*53ee8cc1Swenshuai.xi 	KEY_SYSTEMERR = 3,
67*53ee8cc1Swenshuai.xi };
68*53ee8cc1Swenshuai.xi typedef enum keystatus keystatus;
69*53ee8cc1Swenshuai.xi 
70*53ee8cc1Swenshuai.xi typedef char keybuf[HEXKEYBYTES];
71*53ee8cc1Swenshuai.xi 
72*53ee8cc1Swenshuai.xi typedef char *netnamestr;
73*53ee8cc1Swenshuai.xi 
74*53ee8cc1Swenshuai.xi struct cryptkeyarg {
75*53ee8cc1Swenshuai.xi 	netnamestr remotename;
76*53ee8cc1Swenshuai.xi 	des_block deskey;
77*53ee8cc1Swenshuai.xi };
78*53ee8cc1Swenshuai.xi typedef struct cryptkeyarg cryptkeyarg;
79*53ee8cc1Swenshuai.xi 
80*53ee8cc1Swenshuai.xi struct cryptkeyarg2 {
81*53ee8cc1Swenshuai.xi 	netnamestr remotename;
82*53ee8cc1Swenshuai.xi 	netobj remotekey;
83*53ee8cc1Swenshuai.xi 	des_block deskey;
84*53ee8cc1Swenshuai.xi };
85*53ee8cc1Swenshuai.xi typedef struct cryptkeyarg2 cryptkeyarg2;
86*53ee8cc1Swenshuai.xi 
87*53ee8cc1Swenshuai.xi struct cryptkeyres {
88*53ee8cc1Swenshuai.xi 	keystatus status;
89*53ee8cc1Swenshuai.xi 	union {
90*53ee8cc1Swenshuai.xi 		des_block deskey;
91*53ee8cc1Swenshuai.xi 	} cryptkeyres_u;
92*53ee8cc1Swenshuai.xi };
93*53ee8cc1Swenshuai.xi typedef struct cryptkeyres cryptkeyres;
94*53ee8cc1Swenshuai.xi #define MAXGIDS 16
95*53ee8cc1Swenshuai.xi 
96*53ee8cc1Swenshuai.xi struct unixcred {
97*53ee8cc1Swenshuai.xi 	u_int uid;
98*53ee8cc1Swenshuai.xi 	u_int gid;
99*53ee8cc1Swenshuai.xi 	struct {
100*53ee8cc1Swenshuai.xi 		u_int gids_len;
101*53ee8cc1Swenshuai.xi 		u_int *gids_val;
102*53ee8cc1Swenshuai.xi 	} gids;
103*53ee8cc1Swenshuai.xi };
104*53ee8cc1Swenshuai.xi typedef struct unixcred unixcred;
105*53ee8cc1Swenshuai.xi 
106*53ee8cc1Swenshuai.xi struct getcredres {
107*53ee8cc1Swenshuai.xi 	keystatus status;
108*53ee8cc1Swenshuai.xi 	union {
109*53ee8cc1Swenshuai.xi 		unixcred cred;
110*53ee8cc1Swenshuai.xi 	} getcredres_u;
111*53ee8cc1Swenshuai.xi };
112*53ee8cc1Swenshuai.xi typedef struct getcredres getcredres;
113*53ee8cc1Swenshuai.xi 
114*53ee8cc1Swenshuai.xi struct key_netstarg {
115*53ee8cc1Swenshuai.xi 	keybuf st_priv_key;
116*53ee8cc1Swenshuai.xi 	keybuf st_pub_key;
117*53ee8cc1Swenshuai.xi 	netnamestr st_netname;
118*53ee8cc1Swenshuai.xi };
119*53ee8cc1Swenshuai.xi typedef struct key_netstarg key_netstarg;
120*53ee8cc1Swenshuai.xi 
121*53ee8cc1Swenshuai.xi struct key_netstres {
122*53ee8cc1Swenshuai.xi 	keystatus status;
123*53ee8cc1Swenshuai.xi 	union {
124*53ee8cc1Swenshuai.xi 		key_netstarg knet;
125*53ee8cc1Swenshuai.xi 	} key_netstres_u;
126*53ee8cc1Swenshuai.xi };
127*53ee8cc1Swenshuai.xi typedef struct key_netstres key_netstres;
128*53ee8cc1Swenshuai.xi 
129*53ee8cc1Swenshuai.xi #ifndef opaque
130*53ee8cc1Swenshuai.xi #define opaque char
131*53ee8cc1Swenshuai.xi #endif
132*53ee8cc1Swenshuai.xi 
133*53ee8cc1Swenshuai.xi 
134*53ee8cc1Swenshuai.xi #define KEY_PROG 100029
135*53ee8cc1Swenshuai.xi #define KEY_VERS 1
136*53ee8cc1Swenshuai.xi 
137*53ee8cc1Swenshuai.xi #if defined(__STDC__) || defined(__cplusplus)
138*53ee8cc1Swenshuai.xi #define KEY_SET 1
139*53ee8cc1Swenshuai.xi extern  keystatus * key_set_1(char *, CLIENT *);
140*53ee8cc1Swenshuai.xi extern  keystatus * key_set_1_svc(char *, struct svc_req *);
141*53ee8cc1Swenshuai.xi #define KEY_ENCRYPT 2
142*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_encrypt_1(cryptkeyarg *, CLIENT *);
143*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_encrypt_1_svc(cryptkeyarg *, struct svc_req *);
144*53ee8cc1Swenshuai.xi #define KEY_DECRYPT 3
145*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_decrypt_1(cryptkeyarg *, CLIENT *);
146*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_decrypt_1_svc(cryptkeyarg *, struct svc_req *);
147*53ee8cc1Swenshuai.xi #define KEY_GEN 4
148*53ee8cc1Swenshuai.xi extern  des_block * key_gen_1(void *, CLIENT *);
149*53ee8cc1Swenshuai.xi extern  des_block * key_gen_1_svc(void *, struct svc_req *);
150*53ee8cc1Swenshuai.xi #define KEY_GETCRED 5
151*53ee8cc1Swenshuai.xi extern  getcredres * key_getcred_1(netnamestr *, CLIENT *);
152*53ee8cc1Swenshuai.xi extern  getcredres * key_getcred_1_svc(netnamestr *, struct svc_req *);
153*53ee8cc1Swenshuai.xi extern int key_prog_1_freeresult (SVCXPRT *, xdrproc_t, caddr_t);
154*53ee8cc1Swenshuai.xi 
155*53ee8cc1Swenshuai.xi #else /* K&R C */
156*53ee8cc1Swenshuai.xi #define KEY_SET 1
157*53ee8cc1Swenshuai.xi extern  keystatus * key_set_1();
158*53ee8cc1Swenshuai.xi extern  keystatus * key_set_1_svc();
159*53ee8cc1Swenshuai.xi #define KEY_ENCRYPT 2
160*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_encrypt_1();
161*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_encrypt_1_svc();
162*53ee8cc1Swenshuai.xi #define KEY_DECRYPT 3
163*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_decrypt_1();
164*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_decrypt_1_svc();
165*53ee8cc1Swenshuai.xi #define KEY_GEN 4
166*53ee8cc1Swenshuai.xi extern  des_block * key_gen_1();
167*53ee8cc1Swenshuai.xi extern  des_block * key_gen_1_svc();
168*53ee8cc1Swenshuai.xi #define KEY_GETCRED 5
169*53ee8cc1Swenshuai.xi extern  getcredres * key_getcred_1();
170*53ee8cc1Swenshuai.xi extern  getcredres * key_getcred_1_svc();
171*53ee8cc1Swenshuai.xi extern int key_prog_1_freeresult ();
172*53ee8cc1Swenshuai.xi #endif /* K&R C */
173*53ee8cc1Swenshuai.xi #define KEY_VERS2 2
174*53ee8cc1Swenshuai.xi 
175*53ee8cc1Swenshuai.xi #if defined(__STDC__) || defined(__cplusplus)
176*53ee8cc1Swenshuai.xi extern  keystatus * key_set_2(char *, CLIENT *);
177*53ee8cc1Swenshuai.xi extern  keystatus * key_set_2_svc(char *, struct svc_req *);
178*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_encrypt_2(cryptkeyarg *, CLIENT *);
179*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_encrypt_2_svc(cryptkeyarg *, struct svc_req *);
180*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_decrypt_2(cryptkeyarg *, CLIENT *);
181*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_decrypt_2_svc(cryptkeyarg *, struct svc_req *);
182*53ee8cc1Swenshuai.xi extern  des_block * key_gen_2(void *, CLIENT *);
183*53ee8cc1Swenshuai.xi extern  des_block * key_gen_2_svc(void *, struct svc_req *);
184*53ee8cc1Swenshuai.xi extern  getcredres * key_getcred_2(netnamestr *, CLIENT *);
185*53ee8cc1Swenshuai.xi extern  getcredres * key_getcred_2_svc(netnamestr *, struct svc_req *);
186*53ee8cc1Swenshuai.xi #define KEY_ENCRYPT_PK 6
187*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_encrypt_pk_2(cryptkeyarg2 *, CLIENT *);
188*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_encrypt_pk_2_svc(cryptkeyarg2 *, struct svc_req *);
189*53ee8cc1Swenshuai.xi #define KEY_DECRYPT_PK 7
190*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_decrypt_pk_2(cryptkeyarg2 *, CLIENT *);
191*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_decrypt_pk_2_svc(cryptkeyarg2 *, struct svc_req *);
192*53ee8cc1Swenshuai.xi #define KEY_NET_PUT 8
193*53ee8cc1Swenshuai.xi extern  keystatus * key_net_put_2(key_netstarg *, CLIENT *);
194*53ee8cc1Swenshuai.xi extern  keystatus * key_net_put_2_svc(key_netstarg *, struct svc_req *);
195*53ee8cc1Swenshuai.xi #define KEY_NET_GET 9
196*53ee8cc1Swenshuai.xi extern  key_netstres * key_net_get_2(void *, CLIENT *);
197*53ee8cc1Swenshuai.xi extern  key_netstres * key_net_get_2_svc(void *, struct svc_req *);
198*53ee8cc1Swenshuai.xi #define KEY_GET_CONV 10
199*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_get_conv_2(char *, CLIENT *);
200*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_get_conv_2_svc(char *, struct svc_req *);
201*53ee8cc1Swenshuai.xi extern int key_prog_2_freeresult (SVCXPRT *, xdrproc_t, caddr_t);
202*53ee8cc1Swenshuai.xi 
203*53ee8cc1Swenshuai.xi #else /* K&R C */
204*53ee8cc1Swenshuai.xi extern  keystatus * key_set_2();
205*53ee8cc1Swenshuai.xi extern  keystatus * key_set_2_svc();
206*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_encrypt_2();
207*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_encrypt_2_svc();
208*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_decrypt_2();
209*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_decrypt_2_svc();
210*53ee8cc1Swenshuai.xi extern  des_block * key_gen_2();
211*53ee8cc1Swenshuai.xi extern  des_block * key_gen_2_svc();
212*53ee8cc1Swenshuai.xi extern  getcredres * key_getcred_2();
213*53ee8cc1Swenshuai.xi extern  getcredres * key_getcred_2_svc();
214*53ee8cc1Swenshuai.xi #define KEY_ENCRYPT_PK 6
215*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_encrypt_pk_2();
216*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_encrypt_pk_2_svc();
217*53ee8cc1Swenshuai.xi #define KEY_DECRYPT_PK 7
218*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_decrypt_pk_2();
219*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_decrypt_pk_2_svc();
220*53ee8cc1Swenshuai.xi #define KEY_NET_PUT 8
221*53ee8cc1Swenshuai.xi extern  keystatus * key_net_put_2();
222*53ee8cc1Swenshuai.xi extern  keystatus * key_net_put_2_svc();
223*53ee8cc1Swenshuai.xi #define KEY_NET_GET 9
224*53ee8cc1Swenshuai.xi extern  key_netstres * key_net_get_2();
225*53ee8cc1Swenshuai.xi extern  key_netstres * key_net_get_2_svc();
226*53ee8cc1Swenshuai.xi #define KEY_GET_CONV 10
227*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_get_conv_2();
228*53ee8cc1Swenshuai.xi extern  cryptkeyres * key_get_conv_2_svc();
229*53ee8cc1Swenshuai.xi extern int key_prog_2_freeresult ();
230*53ee8cc1Swenshuai.xi #endif /* K&R C */
231*53ee8cc1Swenshuai.xi 
232*53ee8cc1Swenshuai.xi /* the xdr functions */
233*53ee8cc1Swenshuai.xi 
234*53ee8cc1Swenshuai.xi #if defined(__STDC__) || defined(__cplusplus)
235*53ee8cc1Swenshuai.xi extern  bool_t xdr_keystatus (XDR *, keystatus*);
236*53ee8cc1Swenshuai.xi extern  bool_t xdr_keybuf (XDR *, keybuf);
237*53ee8cc1Swenshuai.xi extern  bool_t xdr_netnamestr (XDR *, netnamestr*);
238*53ee8cc1Swenshuai.xi extern  bool_t xdr_cryptkeyarg (XDR *, cryptkeyarg*);
239*53ee8cc1Swenshuai.xi extern  bool_t xdr_cryptkeyarg2 (XDR *, cryptkeyarg2*);
240*53ee8cc1Swenshuai.xi extern  bool_t xdr_cryptkeyres (XDR *, cryptkeyres*);
241*53ee8cc1Swenshuai.xi extern  bool_t xdr_unixcred (XDR *, unixcred*);
242*53ee8cc1Swenshuai.xi extern  bool_t xdr_getcredres (XDR *, getcredres*);
243*53ee8cc1Swenshuai.xi extern  bool_t xdr_key_netstarg (XDR *, key_netstarg*);
244*53ee8cc1Swenshuai.xi extern  bool_t xdr_key_netstres (XDR *, key_netstres*);
245*53ee8cc1Swenshuai.xi 
246*53ee8cc1Swenshuai.xi #else /* K&R C */
247*53ee8cc1Swenshuai.xi extern bool_t xdr_keystatus ();
248*53ee8cc1Swenshuai.xi extern bool_t xdr_keybuf ();
249*53ee8cc1Swenshuai.xi extern bool_t xdr_netnamestr ();
250*53ee8cc1Swenshuai.xi extern bool_t xdr_cryptkeyarg ();
251*53ee8cc1Swenshuai.xi extern bool_t xdr_cryptkeyarg2 ();
252*53ee8cc1Swenshuai.xi extern bool_t xdr_cryptkeyres ();
253*53ee8cc1Swenshuai.xi extern bool_t xdr_unixcred ();
254*53ee8cc1Swenshuai.xi extern bool_t xdr_getcredres ();
255*53ee8cc1Swenshuai.xi extern bool_t xdr_key_netstarg ();
256*53ee8cc1Swenshuai.xi extern bool_t xdr_key_netstres ();
257*53ee8cc1Swenshuai.xi 
258*53ee8cc1Swenshuai.xi #endif /* K&R C */
259*53ee8cc1Swenshuai.xi 
260*53ee8cc1Swenshuai.xi #ifdef __cplusplus
261*53ee8cc1Swenshuai.xi }
262*53ee8cc1Swenshuai.xi #endif
263*53ee8cc1Swenshuai.xi 
264*53ee8cc1Swenshuai.xi #endif /* !_KEY_PROT_H_RPCGEN */
265