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 #ifdef __cplusplus 12 extern "C" { 13 #endif 14 15 #pragma ident "%Z%%M% %I% %E% SMI" 16 17 /* Copyright (c) 1990, 1991 Sun Microsystems, Inc. */ 18 19 /* 20 * Compiled from key_prot.x using rpcgen. 21 * DO NOT EDIT THIS FILE! 22 * This is NOT source code! 23 */ 24 #define PROOT 3 25 #define HEXMODULUS "d4a0ba0250b6fd2ec626e7efd637df76c716e22d0944b88b" 26 #define HEXKEYBYTES 48 27 #define KEYSIZE 192 28 #define KEYBYTES 24 29 #define KEYCHECKSUMSIZE 16 30 31 enum keystatus { 32 KEY_SUCCESS = 0, 33 KEY_NOSECRET = 1, 34 KEY_UNKNOWN = 2, 35 KEY_SYSTEMERR = 3, 36 KEY_BADALG = 4, 37 KEY_BADLEN = 5 38 }; 39 typedef enum keystatus keystatus; 40 41 typedef char keybuf[HEXKEYBYTES]; 42 43 typedef struct { 44 u_int keybuf3_len; 45 char *keybuf3_val; 46 } keybuf3; 47 48 typedef char *netnamestr; 49 50 typedef int keylen_t; 51 52 typedef int algtype_t; 53 54 struct mechtype { 55 keylen_t keylen; 56 algtype_t algtype; 57 }; 58 typedef struct mechtype mechtype; 59 60 typedef int keynum_t; 61 62 typedef struct { 63 u_int deskeyarray_len; 64 des_block *deskeyarray_val; 65 } deskeyarray; 66 67 struct cryptkeyarg { 68 netnamestr remotename; 69 des_block deskey; 70 }; 71 typedef struct cryptkeyarg cryptkeyarg; 72 73 struct cryptkeyarg2 { 74 netnamestr remotename; 75 netobj remotekey; 76 des_block deskey; 77 }; 78 typedef struct cryptkeyarg2 cryptkeyarg2; 79 80 struct cryptkeyarg3 { 81 netnamestr remotename; 82 keybuf3 remotekey; 83 deskeyarray deskey; 84 algtype_t algtype; 85 keylen_t keylen; 86 }; 87 typedef struct cryptkeyarg3 cryptkeyarg3; 88 89 struct cryptkeyres { 90 keystatus status; 91 union { 92 des_block deskey; 93 } cryptkeyres_u; 94 }; 95 typedef struct cryptkeyres cryptkeyres; 96 97 struct cryptkeyres3 { 98 keystatus status; 99 union { 100 deskeyarray deskey; 101 } cryptkeyres3_u; 102 }; 103 typedef struct cryptkeyres3 cryptkeyres3; 104 #define MAXGIDS 16 105 106 struct unixcred { 107 u_int uid; 108 u_int gid; 109 struct { 110 u_int gids_len; 111 u_int *gids_val; 112 } gids; 113 }; 114 typedef struct unixcred unixcred; 115 116 struct unixcred3 { 117 u_int uid; 118 u_int gid; 119 struct { 120 u_int gids_len; 121 u_int *gids_val; 122 } gids; 123 }; 124 typedef struct unixcred3 unixcred3; 125 126 struct getcredres { 127 keystatus status; 128 union { 129 unixcred cred; 130 } getcredres_u; 131 }; 132 typedef struct getcredres getcredres; 133 134 struct getcredres3 { 135 keystatus status; 136 union { 137 unixcred3 cred; 138 } getcredres3_u; 139 }; 140 typedef struct getcredres3 getcredres3; 141 142 struct key_netstarg { 143 keybuf st_priv_key; 144 keybuf st_pub_key; 145 netnamestr st_netname; 146 }; 147 typedef struct key_netstarg key_netstarg; 148 149 struct key_netstarg3 { 150 keybuf3 st_priv_key; 151 keybuf3 st_pub_key; 152 netnamestr st_netname; 153 algtype_t algtype; 154 keylen_t keylen; 155 des_block userkey; 156 }; 157 typedef struct key_netstarg3 key_netstarg3; 158 159 struct key_netstres { 160 keystatus status; 161 union { 162 key_netstarg knet; 163 } key_netstres_u; 164 }; 165 typedef struct key_netstres key_netstres; 166 167 struct key_netstres3 { 168 keystatus status; 169 union { 170 key_netstarg3 knet; 171 } key_netstres3_u; 172 }; 173 typedef struct key_netstres3 key_netstres3; 174 175 struct deskeyarg3 { 176 keybuf3 pub_key; 177 int nkeys; 178 algtype_t algtype; 179 keylen_t keylen; 180 }; 181 typedef struct deskeyarg3 deskeyarg3; 182 183 struct setkeyarg3 { 184 keybuf3 key; 185 des_block userkey; 186 algtype_t algtype; 187 keylen_t keylen; 188 }; 189 typedef struct setkeyarg3 setkeyarg3; 190 191 #ifndef opaque 192 #define opaque char 193 #endif 194 195 196 #define KEY_PROG 100029 197 #define KEY_VERS 1 198 199 #if defined(__STDC__) || defined(__cplusplus) 200 #define KEY_SET 1 201 extern keystatus * key_set_1(char *, CLIENT *); 202 extern keystatus * key_set_1_svc(char *, struct svc_req *); 203 #define KEY_ENCRYPT 2 204 extern cryptkeyres * key_encrypt_1(cryptkeyarg *, CLIENT *); 205 extern cryptkeyres * key_encrypt_1_svc(cryptkeyarg *, struct svc_req *); 206 #define KEY_DECRYPT 3 207 extern cryptkeyres * key_decrypt_1(cryptkeyarg *, CLIENT *); 208 extern cryptkeyres * key_decrypt_1_svc(cryptkeyarg *, struct svc_req *); 209 #define KEY_GEN 4 210 extern des_block * key_gen_1(void *, CLIENT *); 211 extern des_block * key_gen_1_svc(void *, struct svc_req *); 212 #define KEY_GETCRED 5 213 extern getcredres * key_getcred_1(netnamestr *, CLIENT *); 214 extern getcredres * key_getcred_1_svc(netnamestr *, struct svc_req *); 215 extern int key_prog_1_freeresult(SVCXPRT *, xdrproc_t, caddr_t); 216 217 #else /* K&R C */ 218 #define KEY_SET 1 219 extern keystatus * key_set_1(); 220 extern keystatus * key_set_1_svc(); 221 #define KEY_ENCRYPT 2 222 extern cryptkeyres * key_encrypt_1(); 223 extern cryptkeyres * key_encrypt_1_svc(); 224 #define KEY_DECRYPT 3 225 extern cryptkeyres * key_decrypt_1(); 226 extern cryptkeyres * key_decrypt_1_svc(); 227 #define KEY_GEN 4 228 extern des_block * key_gen_1(); 229 extern des_block * key_gen_1_svc(); 230 #define KEY_GETCRED 5 231 extern getcredres * key_getcred_1(); 232 extern getcredres * key_getcred_1_svc(); 233 extern int key_prog_1_freeresult(); 234 #endif /* K&R C */ 235 #define KEY_VERS2 2 236 237 #if defined(__STDC__) || defined(__cplusplus) 238 extern keystatus * key_set_2(char *, CLIENT *); 239 extern keystatus * key_set_2_svc(char *, struct svc_req *); 240 extern cryptkeyres * key_encrypt_2(cryptkeyarg *, CLIENT *); 241 extern cryptkeyres * key_encrypt_2_svc(cryptkeyarg *, struct svc_req *); 242 extern cryptkeyres * key_decrypt_2(cryptkeyarg *, CLIENT *); 243 extern cryptkeyres * key_decrypt_2_svc(cryptkeyarg *, struct svc_req *); 244 extern des_block * key_gen_2(void *, CLIENT *); 245 extern des_block * key_gen_2_svc(void *, struct svc_req *); 246 extern getcredres * key_getcred_2(netnamestr *, CLIENT *); 247 extern getcredres * key_getcred_2_svc(netnamestr *, struct svc_req *); 248 #define KEY_ENCRYPT_PK 6 249 extern cryptkeyres * key_encrypt_pk_2(cryptkeyarg2 *, CLIENT *); 250 extern cryptkeyres * key_encrypt_pk_2_svc(cryptkeyarg2 *, struct svc_req *); 251 #define KEY_DECRYPT_PK 7 252 extern cryptkeyres * key_decrypt_pk_2(cryptkeyarg2 *, CLIENT *); 253 extern cryptkeyres * key_decrypt_pk_2_svc(cryptkeyarg2 *, struct svc_req *); 254 #define KEY_NET_PUT 8 255 extern keystatus * key_net_put_2(key_netstarg *, CLIENT *); 256 extern keystatus * key_net_put_2_svc(key_netstarg *, struct svc_req *); 257 #define KEY_NET_GET 9 258 extern key_netstres * key_net_get_2(void *, CLIENT *); 259 extern key_netstres * key_net_get_2_svc(void *, struct svc_req *); 260 #define KEY_GET_CONV 10 261 extern cryptkeyres * key_get_conv_2(char *, CLIENT *); 262 extern cryptkeyres * key_get_conv_2_svc(char *, struct svc_req *); 263 extern int key_prog_2_freeresult(SVCXPRT *, xdrproc_t, caddr_t); 264 265 #else /* K&R C */ 266 extern keystatus * key_set_2(); 267 extern keystatus * key_set_2_svc(); 268 extern cryptkeyres * key_encrypt_2(); 269 extern cryptkeyres * key_encrypt_2_svc(); 270 extern cryptkeyres * key_decrypt_2(); 271 extern cryptkeyres * key_decrypt_2_svc(); 272 extern des_block * key_gen_2(); 273 extern des_block * key_gen_2_svc(); 274 extern getcredres * key_getcred_2(); 275 extern getcredres * key_getcred_2_svc(); 276 #define KEY_ENCRYPT_PK 6 277 extern cryptkeyres * key_encrypt_pk_2(); 278 extern cryptkeyres * key_encrypt_pk_2_svc(); 279 #define KEY_DECRYPT_PK 7 280 extern cryptkeyres * key_decrypt_pk_2(); 281 extern cryptkeyres * key_decrypt_pk_2_svc(); 282 #define KEY_NET_PUT 8 283 extern keystatus * key_net_put_2(); 284 extern keystatus * key_net_put_2_svc(); 285 #define KEY_NET_GET 9 286 extern key_netstres * key_net_get_2(); 287 extern key_netstres * key_net_get_2_svc(); 288 #define KEY_GET_CONV 10 289 extern cryptkeyres * key_get_conv_2(); 290 extern cryptkeyres * key_get_conv_2_svc(); 291 extern int key_prog_2_freeresult(); 292 #endif /* K&R C */ 293 #define KEY_VERS3 3 294 295 #if defined(__STDC__) || defined(__cplusplus) 296 extern keystatus * key_set_3(char *, CLIENT *); 297 extern keystatus * key_set_3_svc(char *, struct svc_req *); 298 extern cryptkeyres * key_encrypt_3(cryptkeyarg *, CLIENT *); 299 extern cryptkeyres * key_encrypt_3_svc(cryptkeyarg *, struct svc_req *); 300 extern cryptkeyres * key_decrypt_3(cryptkeyarg *, CLIENT *); 301 extern cryptkeyres * key_decrypt_3_svc(cryptkeyarg *, struct svc_req *); 302 extern des_block * key_gen_3(void *, CLIENT *); 303 extern des_block * key_gen_3_svc(void *, struct svc_req *); 304 extern getcredres * key_getcred_3(netnamestr *, CLIENT *); 305 extern getcredres * key_getcred_3_svc(netnamestr *, struct svc_req *); 306 extern cryptkeyres * key_encrypt_pk_3(cryptkeyarg2 *, CLIENT *); 307 extern cryptkeyres * key_encrypt_pk_3_svc(cryptkeyarg2 *, struct svc_req *); 308 extern cryptkeyres * key_decrypt_pk_3(cryptkeyarg2 *, CLIENT *); 309 extern cryptkeyres * key_decrypt_pk_3_svc(cryptkeyarg2 *, struct svc_req *); 310 extern keystatus * key_net_put_3(key_netstarg *, CLIENT *); 311 extern keystatus * key_net_put_3_svc(key_netstarg *, struct svc_req *); 312 extern key_netstres * key_net_get_3(void *, CLIENT *); 313 extern key_netstres * key_net_get_3_svc(void *, struct svc_req *); 314 extern cryptkeyres * key_get_conv_3(char *, CLIENT *); 315 extern cryptkeyres * key_get_conv_3_svc(char *, struct svc_req *); 316 #define KEY_SET_3 11 317 extern keystatus * key_set_3_3(setkeyarg3 *, CLIENT *); 318 extern keystatus * key_set_3_3_svc(setkeyarg3 *, struct svc_req *); 319 #define KEY_ENCRYPT_3 12 320 extern cryptkeyres3 * key_encrypt_3_3(cryptkeyarg3 *, CLIENT *); 321 extern cryptkeyres3 * key_encrypt_3_3_svc(cryptkeyarg3 *, struct svc_req *); 322 #define KEY_DECRYPT_3 13 323 extern cryptkeyres3 * key_decrypt_3_3(cryptkeyarg3 *, CLIENT *); 324 extern cryptkeyres3 * key_decrypt_3_3_svc(cryptkeyarg3 *, struct svc_req *); 325 #define KEY_GEN_3 14 326 extern deskeyarray * key_gen_3_3(keynum_t *, CLIENT *); 327 extern deskeyarray * key_gen_3_3_svc(keynum_t *, struct svc_req *); 328 #define KEY_GETCRED_3 15 329 extern getcredres3 * key_getcred_3_3(netnamestr *, CLIENT *); 330 extern getcredres3 * key_getcred_3_3_svc(netnamestr *, struct svc_req *); 331 #define KEY_ENCRYPT_PK_3 16 332 extern cryptkeyres3 * key_encrypt_pk_3_3(cryptkeyarg3 *, CLIENT *); 333 extern cryptkeyres3 * key_encrypt_pk_3_3_svc(cryptkeyarg3 *, struct svc_req *); 334 #define KEY_DECRYPT_PK_3 17 335 extern cryptkeyres3 * key_decrypt_pk_3_3(cryptkeyarg3 *, CLIENT *); 336 extern cryptkeyres3 * key_decrypt_pk_3_3_svc(cryptkeyarg3 *, struct svc_req *); 337 #define KEY_NET_PUT_3 18 338 extern keystatus * key_net_put_3_3(key_netstarg3 *, CLIENT *); 339 extern keystatus * key_net_put_3_3_svc(key_netstarg3 *, struct svc_req *); 340 #define KEY_NET_GET_3 19 341 extern key_netstres3 * key_net_get_3_3(key_netstarg3 *, CLIENT *); 342 extern key_netstres3 * key_net_get_3_3_svc(key_netstarg3 *, struct svc_req *); 343 #define KEY_GET_CONV_3 20 344 extern cryptkeyres3 * key_get_conv_3_3(deskeyarg3 *, CLIENT *); 345 extern cryptkeyres3 * key_get_conv_3_3_svc(deskeyarg3 *, struct svc_req *); 346 #define KEY_CLEAR_3 21 347 extern keystatus * key_clear_3_3(void *, CLIENT *); 348 extern keystatus * key_clear_3_3_svc(void *, struct svc_req *); 349 extern int key_prog_3_freeresult(SVCXPRT *, xdrproc_t, caddr_t); 350 351 #else /* K&R C */ 352 extern keystatus * key_set_3(); 353 extern keystatus * key_set_3_svc(); 354 extern cryptkeyres * key_encrypt_3(); 355 extern cryptkeyres * key_encrypt_3_svc(); 356 extern cryptkeyres * key_decrypt_3(); 357 extern cryptkeyres * key_decrypt_3_svc(); 358 extern des_block * key_gen_3(); 359 extern des_block * key_gen_3_svc(); 360 extern getcredres * key_getcred_3(); 361 extern getcredres * key_getcred_3_svc(); 362 extern cryptkeyres * key_encrypt_pk_3(); 363 extern cryptkeyres * key_encrypt_pk_3_svc(); 364 extern cryptkeyres * key_decrypt_pk_3(); 365 extern cryptkeyres * key_decrypt_pk_3_svc(); 366 extern keystatus * key_net_put_3(); 367 extern keystatus * key_net_put_3_svc(); 368 extern key_netstres * key_net_get_3(); 369 extern key_netstres * key_net_get_3_svc(); 370 extern cryptkeyres * key_get_conv_3(); 371 extern cryptkeyres * key_get_conv_3_svc(); 372 #define KEY_SET_3 11 373 extern keystatus * key_set_3_3(); 374 extern keystatus * key_set_3_3_svc(); 375 #define KEY_ENCRYPT_3 12 376 extern cryptkeyres3 * key_encrypt_3_3(); 377 extern cryptkeyres3 * key_encrypt_3_3_svc(); 378 #define KEY_DECRYPT_3 13 379 extern cryptkeyres3 * key_decrypt_3_3(); 380 extern cryptkeyres3 * key_decrypt_3_3_svc(); 381 #define KEY_GEN_3 14 382 extern deskeyarray * key_gen_3_3(); 383 extern deskeyarray * key_gen_3_3_svc(); 384 #define KEY_GETCRED_3 15 385 extern getcredres3 * key_getcred_3_3(); 386 extern getcredres3 * key_getcred_3_3_svc(); 387 #define KEY_ENCRYPT_PK_3 16 388 extern cryptkeyres3 * key_encrypt_pk_3_3(); 389 extern cryptkeyres3 * key_encrypt_pk_3_3_svc(); 390 #define KEY_DECRYPT_PK_3 17 391 extern cryptkeyres3 * key_decrypt_pk_3_3(); 392 extern cryptkeyres3 * key_decrypt_pk_3_3_svc(); 393 #define KEY_NET_PUT_3 18 394 extern keystatus * key_net_put_3_3(); 395 extern keystatus * key_net_put_3_3_svc(); 396 #define KEY_NET_GET_3 19 397 extern key_netstres3 * key_net_get_3_3(); 398 extern key_netstres3 * key_net_get_3_3_svc(); 399 #define KEY_GET_CONV_3 20 400 extern cryptkeyres3 * key_get_conv_3_3(); 401 extern cryptkeyres3 * key_get_conv_3_3_svc(); 402 #define KEY_CLEAR_3 21 403 extern keystatus * key_clear_3_3(); 404 extern keystatus * key_clear_3_3_svc(); 405 extern int key_prog_3_freeresult(); 406 #endif /* K&R C */ 407 408 /* the xdr functions */ 409 410 #if defined(__STDC__) || defined(__cplusplus) 411 extern bool_t xdr_keystatus(XDR *, keystatus*); 412 extern bool_t xdr_keybuf(XDR *, keybuf); 413 extern bool_t xdr_keybuf3(XDR *, keybuf3*); 414 extern bool_t xdr_netnamestr(XDR *, netnamestr*); 415 extern bool_t xdr_keylen_t(XDR *, keylen_t*); 416 extern bool_t xdr_algtype_t(XDR *, algtype_t*); 417 extern bool_t xdr_mechtype(XDR *, mechtype*); 418 extern bool_t xdr_keynum_t(XDR *, keynum_t*); 419 extern bool_t xdr_deskeyarray(XDR *, deskeyarray*); 420 extern bool_t xdr_cryptkeyarg(XDR *, cryptkeyarg*); 421 extern bool_t xdr_cryptkeyarg2(XDR *, cryptkeyarg2*); 422 extern bool_t xdr_cryptkeyarg3(XDR *, cryptkeyarg3*); 423 extern bool_t xdr_cryptkeyres(XDR *, cryptkeyres*); 424 extern bool_t xdr_cryptkeyres3(XDR *, cryptkeyres3*); 425 extern bool_t xdr_unixcred(XDR *, unixcred*); 426 extern bool_t xdr_unixcred3(XDR *, unixcred3*); 427 extern bool_t xdr_getcredres(XDR *, getcredres*); 428 extern bool_t xdr_getcredres3(XDR *, getcredres3*); 429 extern bool_t xdr_key_netstarg(XDR *, key_netstarg*); 430 extern bool_t xdr_key_netstarg3(XDR *, key_netstarg3*); 431 extern bool_t xdr_key_netstres(XDR *, key_netstres*); 432 extern bool_t xdr_key_netstres3(XDR *, key_netstres3*); 433 extern bool_t xdr_deskeyarg3(XDR *, deskeyarg3*); 434 extern bool_t xdr_setkeyarg3(XDR *, setkeyarg3*); 435 436 #else /* K&R C */ 437 extern bool_t xdr_keystatus(); 438 extern bool_t xdr_keybuf(); 439 extern bool_t xdr_keybuf3(); 440 extern bool_t xdr_netnamestr(); 441 extern bool_t xdr_keylen_t(); 442 extern bool_t xdr_algtype_t(); 443 extern bool_t xdr_mechtype(); 444 extern bool_t xdr_keynum_t(); 445 extern bool_t xdr_deskeyarray(); 446 extern bool_t xdr_cryptkeyarg(); 447 extern bool_t xdr_cryptkeyarg2(); 448 extern bool_t xdr_cryptkeyarg3(); 449 extern bool_t xdr_cryptkeyres(); 450 extern bool_t xdr_cryptkeyres3(); 451 extern bool_t xdr_unixcred(); 452 extern bool_t xdr_unixcred3(); 453 extern bool_t xdr_getcredres(); 454 extern bool_t xdr_getcredres3(); 455 extern bool_t xdr_key_netstarg(); 456 extern bool_t xdr_key_netstarg3(); 457 extern bool_t xdr_key_netstres(); 458 extern bool_t xdr_key_netstres3(); 459 extern bool_t xdr_deskeyarg3(); 460 extern bool_t xdr_setkeyarg3(); 461 462 #endif /* K&R C */ 463 464 #ifdef __cplusplus 465 } 466 #endif 467 468 #endif /* !_KEY_PROT_H_RPCGEN */ 469