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