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