Lines 166-174
union des_block {
Link Here
|
166 |
char c[8]; |
166 |
char c[8]; |
167 |
}; |
167 |
}; |
168 |
typedef union des_block des_block; |
168 |
typedef union des_block des_block; |
|
|
169 |
#ifdef __GLIBC__ |
169 |
__BEGIN_DECLS |
170 |
__BEGIN_DECLS |
|
|
171 |
#elif defined(__cplusplus) |
172 |
extern "C" { |
173 |
#endif |
170 |
extern bool_t xdr_des_block(XDR *, des_block *); |
174 |
extern bool_t xdr_des_block(XDR *, des_block *); |
|
|
175 |
#ifdef __GLIBC__ |
171 |
__END_DECLS |
176 |
__END_DECLS |
|
|
177 |
#elif defined(__cplusplus) |
178 |
} |
179 |
#endif |
172 |
|
180 |
|
173 |
/* |
181 |
/* |
174 |
* Authentication info. Opaque to client. |
182 |
* Authentication info. Opaque to client. |
Lines 279-287
auth_put(AUTH *auth)
Link Here
|
279 |
xfunc, xwhere)) |
287 |
xfunc, xwhere)) |
280 |
|
288 |
|
281 |
|
289 |
|
|
|
290 |
#ifdef __GLIBC__ |
282 |
__BEGIN_DECLS |
291 |
__BEGIN_DECLS |
|
|
292 |
#elif defined(__cplusplus) |
293 |
extern "C" { |
294 |
#endif |
283 |
extern struct opaque_auth _null_auth; |
295 |
extern struct opaque_auth _null_auth; |
|
|
296 |
#ifdef __GLIBC__ |
284 |
__END_DECLS |
297 |
__END_DECLS |
|
|
298 |
#elif defined(__cplusplus) |
299 |
} |
300 |
#endif |
285 |
|
301 |
|
286 |
/* |
302 |
/* |
287 |
* Any style authentication. These routines can be used by any |
303 |
* Any style authentication. These routines can be used by any |
Lines 302-312
int authany_wrap(void), authany_unwrap(v
Link Here
|
302 |
* int len; |
318 |
* int len; |
303 |
* int *aup_gids; |
319 |
* int *aup_gids; |
304 |
*/ |
320 |
*/ |
|
|
321 |
#ifdef __GLIBC__ |
305 |
__BEGIN_DECLS |
322 |
__BEGIN_DECLS |
|
|
323 |
#elif defined(__cplusplus) |
324 |
extern "C" { |
325 |
#endif |
306 |
extern AUTH *authunix_create(char *, uid_t, uid_t, int, uid_t *); |
326 |
extern AUTH *authunix_create(char *, uid_t, uid_t, int, uid_t *); |
307 |
extern AUTH *authunix_create_default(void); /* takes no parameters */ |
327 |
extern AUTH *authunix_create_default(void); /* takes no parameters */ |
308 |
extern AUTH *authnone_create(void); /* takes no parameters */ |
328 |
extern AUTH *authnone_create(void); /* takes no parameters */ |
|
|
329 |
#ifdef __GLIBC__ |
309 |
__END_DECLS |
330 |
__END_DECLS |
|
|
331 |
#elif defined(__cplusplus) |
332 |
} |
333 |
#endif |
310 |
/* |
334 |
/* |
311 |
* DES style authentication |
335 |
* DES style authentication |
312 |
* AUTH *authsecdes_create(servername, window, timehost, ckey) |
336 |
* AUTH *authsecdes_create(servername, window, timehost, ckey) |
Lines 315-329
__END_DECLS
Link Here
|
315 |
* const char *timehost; - optional hostname to sync with |
339 |
* const char *timehost; - optional hostname to sync with |
316 |
* des_block *ckey; - optional conversation key to use |
340 |
* des_block *ckey; - optional conversation key to use |
317 |
*/ |
341 |
*/ |
|
|
342 |
#ifdef __GLIBC__ |
318 |
__BEGIN_DECLS |
343 |
__BEGIN_DECLS |
|
|
344 |
#elif defined(__cplusplus) |
345 |
extern "C" { |
346 |
#endif |
319 |
extern AUTH *authdes_create (char *, u_int, struct sockaddr *, des_block *); |
347 |
extern AUTH *authdes_create (char *, u_int, struct sockaddr *, des_block *); |
320 |
extern AUTH *authdes_seccreate (const char *, const u_int, const char *, |
348 |
extern AUTH *authdes_seccreate (const char *, const u_int, const char *, |
321 |
const des_block *); |
349 |
const des_block *); |
|
|
350 |
#ifdef __GLIBC__ |
322 |
__END_DECLS |
351 |
__END_DECLS |
|
|
352 |
#elif defined(__cplusplus) |
353 |
} |
354 |
#endif |
323 |
|
355 |
|
|
|
356 |
#ifdef __GLIBC__ |
324 |
__BEGIN_DECLS |
357 |
__BEGIN_DECLS |
|
|
358 |
#elif defined(__cplusplus) |
359 |
extern "C" { |
360 |
#endif |
325 |
extern bool_t xdr_opaque_auth (XDR *, struct opaque_auth *); |
361 |
extern bool_t xdr_opaque_auth (XDR *, struct opaque_auth *); |
|
|
362 |
#ifdef __GLIBC__ |
326 |
__END_DECLS |
363 |
__END_DECLS |
|
|
364 |
#elif defined(__cplusplus) |
365 |
} |
366 |
#endif |
327 |
|
367 |
|
328 |
#define authsys_create(c,i1,i2,i3,ip) authunix_create((c),(i1),(i2),(i3),(ip)) |
368 |
#define authsys_create(c,i1,i2,i3,ip) authunix_create((c),(i1),(i2),(i3),(ip)) |
329 |
#define authsys_create_default() authunix_create_default() |
369 |
#define authsys_create_default() authunix_create_default() |
Lines 331-366
__END_DECLS
Link Here
|
331 |
/* |
371 |
/* |
332 |
* Netname manipulation routines. |
372 |
* Netname manipulation routines. |
333 |
*/ |
373 |
*/ |
|
|
374 |
#ifdef __GLIBC__ |
334 |
__BEGIN_DECLS |
375 |
__BEGIN_DECLS |
|
|
376 |
#elif defined(__cplusplus) |
377 |
extern "C" { |
378 |
#endif |
335 |
extern int getnetname(char *); |
379 |
extern int getnetname(char *); |
336 |
extern int host2netname(char *, const char *, const char *); |
380 |
extern int host2netname(char *, const char *, const char *); |
337 |
extern int user2netname(char *, const uid_t, const char *); |
381 |
extern int user2netname(char *, const uid_t, const char *); |
338 |
extern int netname2user(char *, uid_t *, gid_t *, int *, gid_t *); |
382 |
extern int netname2user(char *, uid_t *, gid_t *, int *, gid_t *); |
339 |
extern int netname2host(char *, char *, const int); |
383 |
extern int netname2host(char *, char *, const int); |
340 |
extern void passwd2des ( char *, char * ); |
384 |
extern void passwd2des ( char *, char * ); |
|
|
385 |
#ifdef __GLIBC__ |
341 |
__END_DECLS |
386 |
__END_DECLS |
|
|
387 |
#elif defined(__cplusplus) |
388 |
} |
389 |
#endif |
342 |
|
390 |
|
343 |
/* |
391 |
/* |
344 |
* |
392 |
* |
345 |
* These routines interface to the keyserv daemon |
393 |
* These routines interface to the keyserv daemon |
346 |
* |
394 |
* |
347 |
*/ |
395 |
*/ |
|
|
396 |
#ifdef __GLIBC__ |
348 |
__BEGIN_DECLS |
397 |
__BEGIN_DECLS |
|
|
398 |
#elif defined(__cplusplus) |
399 |
extern "C" { |
400 |
#endif |
349 |
extern int key_decryptsession(const char *, des_block *); |
401 |
extern int key_decryptsession(const char *, des_block *); |
350 |
extern int key_encryptsession(const char *, des_block *); |
402 |
extern int key_encryptsession(const char *, des_block *); |
351 |
extern int key_gendes(des_block *); |
403 |
extern int key_gendes(des_block *); |
352 |
extern int key_setsecret(const char *); |
404 |
extern int key_setsecret(const char *); |
353 |
extern int key_secretkey_is_set(void); |
405 |
extern int key_secretkey_is_set(void); |
|
|
406 |
#ifdef __GLIBC__ |
354 |
__END_DECLS |
407 |
__END_DECLS |
|
|
408 |
#elif defined(__cplusplus) |
409 |
} |
410 |
#endif |
355 |
|
411 |
|
356 |
/* |
412 |
/* |
357 |
* Publickey routines. |
413 |
* Publickey routines. |
358 |
*/ |
414 |
*/ |
|
|
415 |
#ifdef __GLIBC__ |
359 |
__BEGIN_DECLS |
416 |
__BEGIN_DECLS |
|
|
417 |
#elif defined(__cplusplus) |
418 |
extern "C" { |
419 |
#endif |
360 |
extern int getpublickey (const char *, char *); |
420 |
extern int getpublickey (const char *, char *); |
361 |
extern int getpublicandprivatekey (char *, char *); |
421 |
extern int getpublicandprivatekey (char *, char *); |
362 |
extern int getsecretkey (char *, char *, char *); |
422 |
extern int getsecretkey (char *, char *, char *); |
|
|
423 |
#ifdef __GLIBC__ |
363 |
__END_DECLS |
424 |
__END_DECLS |
|
|
425 |
#elif defined(__cplusplus) |
426 |
} |
427 |
#endif |
364 |
|
428 |
|
365 |
#ifdef KERBEROS |
429 |
#ifdef KERBEROS |
366 |
/* |
430 |
/* |
Lines 373-382
__END_DECLS
Link Here
|
373 |
* const char *timehost; - optional hostname to sync with |
437 |
* const char *timehost; - optional hostname to sync with |
374 |
* int *status; - kerberos status returned |
438 |
* int *status; - kerberos status returned |
375 |
*/ |
439 |
*/ |
|
|
440 |
#ifdef __GLIBC__ |
376 |
__BEGIN_DECLS |
441 |
__BEGIN_DECLS |
|
|
442 |
#elif defined(__cplusplus) |
443 |
extern "C" { |
444 |
#endif |
377 |
extern AUTH *authkerb_seccreate(const char *, const char *, const char *, |
445 |
extern AUTH *authkerb_seccreate(const char *, const char *, const char *, |
378 |
const u_int, const char *, int *); |
446 |
const u_int, const char *, int *); |
|
|
447 |
#ifdef __GLIBC__ |
379 |
__END_DECLS |
448 |
__END_DECLS |
|
|
449 |
#elif defined(__cplusplus) |
450 |
} |
451 |
#endif |
380 |
|
452 |
|
381 |
/* |
453 |
/* |
382 |
* Map a kerberos credential into a unix cred. |
454 |
* Map a kerberos credential into a unix cred. |
Lines 389-408
__END_DECLS
Link Here
|
389 |
* int *groups; |
461 |
* int *groups; |
390 |
* |
462 |
* |
391 |
*/ |
463 |
*/ |
|
|
464 |
#ifdef __GLIBC__ |
392 |
__BEGIN_DECLS |
465 |
__BEGIN_DECLS |
|
|
466 |
#elif defined(__cplusplus) |
467 |
extern "C" { |
468 |
#endif |
393 |
extern int authkerb_getucred(/* struct svc_req *, uid_t *, gid_t *, |
469 |
extern int authkerb_getucred(/* struct svc_req *, uid_t *, gid_t *, |
394 |
short *, int * */); |
470 |
short *, int * */); |
|
|
471 |
#ifdef __GLIBC__ |
395 |
__END_DECLS |
472 |
__END_DECLS |
|
|
473 |
#elif defined(__cplusplus) |
474 |
} |
475 |
#endif |
396 |
#endif /* KERBEROS */ |
476 |
#endif /* KERBEROS */ |
397 |
|
477 |
|
|
|
478 |
#ifdef __GLIBC__ |
398 |
__BEGIN_DECLS |
479 |
__BEGIN_DECLS |
|
|
480 |
#elif defined(__cplusplus) |
481 |
extern "C" { |
482 |
#endif |
399 |
struct svc_req; |
483 |
struct svc_req; |
400 |
struct rpc_msg; |
484 |
struct rpc_msg; |
401 |
enum auth_stat _svcauth_none (struct svc_req *, struct rpc_msg *); |
485 |
enum auth_stat _svcauth_none (struct svc_req *, struct rpc_msg *); |
402 |
enum auth_stat _svcauth_short (struct svc_req *, struct rpc_msg *); |
486 |
enum auth_stat _svcauth_short (struct svc_req *, struct rpc_msg *); |
403 |
enum auth_stat _svcauth_unix (struct svc_req *, struct rpc_msg *); |
487 |
enum auth_stat _svcauth_unix (struct svc_req *, struct rpc_msg *); |
404 |
enum auth_stat _svcauth_gss (struct svc_req *, struct rpc_msg *, bool_t *); |
488 |
enum auth_stat _svcauth_gss (struct svc_req *, struct rpc_msg *, bool_t *); |
|
|
489 |
#ifdef __GLIBC__ |
405 |
__END_DECLS |
490 |
__END_DECLS |
|
|
491 |
#elif defined(__cplusplus) |
492 |
} |
493 |
#endif |
406 |
|
494 |
|
407 |
#define AUTH_NONE 0 /* no authentication */ |
495 |
#define AUTH_NONE 0 /* no authentication */ |
408 |
#define AUTH_NULL 0 /* backward compatibility */ |
496 |
#define AUTH_NULL 0 /* backward compatibility */ |