diff --git a/lib/kafs/kafs_locl.h b/lib/kafs/kafs_locl.h index c128854bc..56cf69c4a 100644 --- a/lib/kafs/kafs_locl.h +++ b/lib/kafs/kafs_locl.h @@ -93,7 +93,13 @@ #endif #ifdef KRB4 #include -#endif +#else +#ifdef KRB5 +#include "crypto-headers.h" +#include +typedef struct credentials CREDENTIALS; +#endif /* KRB5 */ +#endif /* KRB4 */ #include #include @@ -101,14 +107,15 @@ #include "afssysdefs.h" struct kafs_data; +struct kafs_token; typedef int (*afslog_uid_func_t)(struct kafs_data *, - const char *cell, - const char *realm_hint, + const char *, + const char *, uid_t, - const char *homedir); + const char *); typedef int (*get_cred_func_t)(struct kafs_data*, const char*, const char*, - const char*, CREDENTIALS*); + const char*, uid_t, struct kafs_token *); typedef char* (*get_realm_func_t)(struct kafs_data*, const char*); @@ -119,13 +126,25 @@ typedef struct kafs_data { void *data; } kafs_data; +struct kafs_token { + struct ClearToken ct; + void *ticket; + size_t ticket_len; +}; + int _kafs_afslog_all_local_cells(kafs_data*, uid_t, const char*); int _kafs_get_cred(kafs_data*, const char*, const char*, const char *, - CREDENTIALS*); + uid_t, struct kafs_token *); int -_kafs_realm_of_cell(kafs_data *data, const char *cell, char **realm); +_kafs_realm_of_cell(kafs_data *, const char *, char **); + +int +_kafs_v4_to_kt(CREDENTIALS *, uid_t, struct kafs_token *); + +void +_kafs_fixup_viceid(struct ClearToken *, uid_t); #ifdef _AIX int aix_pioctl(char*, int, struct ViceIoctl*, int);