1 /* -*- mode: c; c-basic-offset: 4; indent-tabs-mode: nil -*- */ 2 #ifndef _KRB5_KDB5_H_ 3 #define _KRB5_KDB5_H_ 4 5 #include <k5-int.h> 6 7 #if HAVE_UNISTD_H 8 #include <unistd.h> 9 #endif 10 11 #include <errno.h> 12 #include <utime.h> 13 #include "kdb.h" 14 15 #define KRB5_DB_GET_DB_CONTEXT(kcontext) (((kdb5_dal_handle*) (kcontext)->dal_handle)->db_context) 16 #define KRB5_DB_GET_PROFILE(kcontext) ((kcontext)->profile) 17 #define KRB5_DB_GET_REALM(kcontext) ((kcontext)->default_realm) 18 19 typedef struct _db_library { 20 char name[KDB_MAX_DB_NAME]; 21 int reference_cnt; 22 struct plugin_dir_handle dl_dir_handle; 23 kdb_vftabl vftabl; 24 struct _db_library *next, *prev; 25 } *db_library; 26 27 struct _kdb5_dal_handle 28 { 29 /* Helps us to change db_library without affecting modules to some 30 extent. */ 31 void *db_context; 32 db_library lib_handle; 33 krb5_keylist_node *master_keylist; 34 krb5_principal master_princ; 35 }; 36 /* typedef kdb5_dal_handle is in k5-int.h now */ 37 38 #endif /* end of _KRB5_KDB5_H_ */ 39