summaryrefslogtreecommitdiffstats
path: root/src/include/kdb.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/include/kdb.h')
-rw-r--r--src/include/kdb.h779
1 files changed, 389 insertions, 390 deletions
diff --git a/src/include/kdb.h b/src/include/kdb.h
index 7506f1c0e..8c6f53265 100644
--- a/src/include/kdb.h
+++ b/src/include/kdb.h
@@ -1,3 +1,4 @@
+/* -*- mode: c; c-basic-offset: 4; indent-tabs-mode: nil -*- */
/*
* include/krb5/kdb.h
*
@@ -72,36 +73,36 @@
#include <krb5.h>
/* Salt types */
-#define KRB5_KDB_SALTTYPE_NORMAL 0
-#define KRB5_KDB_SALTTYPE_V4 1
-#define KRB5_KDB_SALTTYPE_NOREALM 2
-#define KRB5_KDB_SALTTYPE_ONLYREALM 3
-#define KRB5_KDB_SALTTYPE_SPECIAL 4
-#define KRB5_KDB_SALTTYPE_AFS3 5
-#define KRB5_KDB_SALTTYPE_CERTHASH 6
+#define KRB5_KDB_SALTTYPE_NORMAL 0
+#define KRB5_KDB_SALTTYPE_V4 1
+#define KRB5_KDB_SALTTYPE_NOREALM 2
+#define KRB5_KDB_SALTTYPE_ONLYREALM 3
+#define KRB5_KDB_SALTTYPE_SPECIAL 4
+#define KRB5_KDB_SALTTYPE_AFS3 5
+#define KRB5_KDB_SALTTYPE_CERTHASH 6
/* Attributes */
-#define KRB5_KDB_DISALLOW_POSTDATED 0x00000001
-#define KRB5_KDB_DISALLOW_FORWARDABLE 0x00000002
-#define KRB5_KDB_DISALLOW_TGT_BASED 0x00000004
-#define KRB5_KDB_DISALLOW_RENEWABLE 0x00000008
-#define KRB5_KDB_DISALLOW_PROXIABLE 0x00000010
-#define KRB5_KDB_DISALLOW_DUP_SKEY 0x00000020
-#define KRB5_KDB_DISALLOW_ALL_TIX 0x00000040
-#define KRB5_KDB_REQUIRES_PRE_AUTH 0x00000080
-#define KRB5_KDB_REQUIRES_HW_AUTH 0x00000100
-#define KRB5_KDB_REQUIRES_PWCHANGE 0x00000200
-#define KRB5_KDB_DISALLOW_SVR 0x00001000
-#define KRB5_KDB_PWCHANGE_SERVICE 0x00002000
+#define KRB5_KDB_DISALLOW_POSTDATED 0x00000001
+#define KRB5_KDB_DISALLOW_FORWARDABLE 0x00000002
+#define KRB5_KDB_DISALLOW_TGT_BASED 0x00000004
+#define KRB5_KDB_DISALLOW_RENEWABLE 0x00000008
+#define KRB5_KDB_DISALLOW_PROXIABLE 0x00000010
+#define KRB5_KDB_DISALLOW_DUP_SKEY 0x00000020
+#define KRB5_KDB_DISALLOW_ALL_TIX 0x00000040
+#define KRB5_KDB_REQUIRES_PRE_AUTH 0x00000080
+#define KRB5_KDB_REQUIRES_HW_AUTH 0x00000100
+#define KRB5_KDB_REQUIRES_PWCHANGE 0x00000200
+#define KRB5_KDB_DISALLOW_SVR 0x00001000
+#define KRB5_KDB_PWCHANGE_SERVICE 0x00002000
#define KRB5_KDB_SUPPORT_DESMD5 0x00004000
-#define KRB5_KDB_NEW_PRINC 0x00008000
-#define KRB5_KDB_OK_AS_DELEGATE 0x00100000
-#define KRB5_KDB_OK_TO_AUTH_AS_DELEGATE 0x00200000 /* S4U2Self OK */
-#define KRB5_KDB_NO_AUTH_DATA_REQUIRED 0x00400000
+#define KRB5_KDB_NEW_PRINC 0x00008000
+#define KRB5_KDB_OK_AS_DELEGATE 0x00100000
+#define KRB5_KDB_OK_TO_AUTH_AS_DELEGATE 0x00200000 /* S4U2Self OK */
+#define KRB5_KDB_NO_AUTH_DATA_REQUIRED 0x00400000
/* Creation flags */
-#define KRB5_KDB_CREATE_BTREE 0x00000001
-#define KRB5_KDB_CREATE_HASH 0x00000002
+#define KRB5_KDB_CREATE_BTREE 0x00000001
+#define KRB5_KDB_CREATE_HASH 0x00000002
#if !defined(_WIN32)
@@ -111,10 +112,10 @@
* adding new tl_data types.
*/
typedef struct _krb5_tl_data {
- struct _krb5_tl_data* tl_data_next; /* NOT saved */
- krb5_int16 tl_data_type;
- krb5_ui_2 tl_data_length;
- krb5_octet * tl_data_contents;
+ struct _krb5_tl_data* tl_data_next; /* NOT saved */
+ krb5_int16 tl_data_type;
+ krb5_ui_2 tl_data_length;
+ krb5_octet * tl_data_contents;
} krb5_tl_data;
/*
@@ -124,40 +125,40 @@ typedef struct _krb5_tl_data {
* Currently the first type is the enctype and the second is the salt type.
*/
typedef struct _krb5_key_data {
- krb5_int16 key_data_ver; /* Version */
- krb5_int16 key_data_kvno; /* Key Version */
- krb5_int16 key_data_type[2]; /* Array of types */
- krb5_ui_2 key_data_length[2]; /* Array of lengths */
- krb5_octet * key_data_contents[2]; /* Array of pointers */
+ krb5_int16 key_data_ver; /* Version */
+ krb5_int16 key_data_kvno; /* Key Version */
+ krb5_int16 key_data_type[2]; /* Array of types */
+ krb5_ui_2 key_data_length[2]; /* Array of lengths */
+ krb5_octet * key_data_contents[2]; /* Array of pointers */
} krb5_key_data;
-#define KRB5_KDB_V1_KEY_DATA_ARRAY 2 /* # of array elements */
+#define KRB5_KDB_V1_KEY_DATA_ARRAY 2 /* # of array elements */
typedef struct _krb5_keysalt {
- krb5_int16 type;
- krb5_data data; /* Length, data */
+ krb5_int16 type;
+ krb5_data data; /* Length, data */
} krb5_keysalt;
typedef struct _krb5_db_entry_new {
- krb5_magic magic; /* NOT saved */
- krb5_ui_2 len;
+ krb5_magic magic; /* NOT saved */
+ krb5_ui_2 len;
krb5_ui_4 mask; /* members currently changed/set */
- krb5_flags attributes;
- krb5_deltat max_life;
- krb5_deltat max_renewable_life;
- krb5_timestamp expiration; /* When the client expires */
- krb5_timestamp pw_expiration; /* When its passwd expires */
- krb5_timestamp last_success; /* Last successful passwd */
- krb5_timestamp last_failed; /* Last failed passwd attempt */
- krb5_kvno fail_auth_count; /* # of failed passwd attempt */
- krb5_int16 n_tl_data;
- krb5_int16 n_key_data;
- krb5_ui_2 e_length; /* Length of extra data */
- krb5_octet * e_data; /* Extra data to be saved */
-
- krb5_principal princ; /* Length, data */
- krb5_tl_data * tl_data; /* Linked list */
- krb5_key_data * key_data; /* Array */
+ krb5_flags attributes;
+ krb5_deltat max_life;
+ krb5_deltat max_renewable_life;
+ krb5_timestamp expiration; /* When the client expires */
+ krb5_timestamp pw_expiration; /* When its passwd expires */
+ krb5_timestamp last_success; /* Last successful passwd */
+ krb5_timestamp last_failed; /* Last failed passwd attempt */
+ krb5_kvno fail_auth_count; /* # of failed passwd attempt */
+ krb5_int16 n_tl_data;
+ krb5_int16 n_key_data;
+ krb5_ui_2 e_length; /* Length of extra data */
+ krb5_octet * e_data; /* Extra data to be saved */
+
+ krb5_principal princ; /* Length, data */
+ krb5_tl_data * tl_data; /* Linked list */
+ krb5_key_data * key_data; /* Array */
} krb5_db_entry;
typedef struct _osa_policy_ent_t {
@@ -178,18 +179,18 @@ typedef struct _osa_policy_ent_t {
typedef void (*osa_adb_iter_policy_func) (void *, osa_policy_ent_t);
typedef struct __krb5_key_salt_tuple {
- krb5_enctype ks_enctype;
- krb5_int32 ks_salttype;
+ krb5_enctype ks_enctype;
+ krb5_int32 ks_salttype;
} krb5_key_salt_tuple;
-#define KRB5_KDB_MAGIC_NUMBER 0xdbdbdbdb
-#define KRB5_KDB_V1_BASE_LENGTH 38
+#define KRB5_KDB_MAGIC_NUMBER 0xdbdbdbdb
+#define KRB5_KDB_V1_BASE_LENGTH 38
-#define KRB5_TL_LAST_PWD_CHANGE 0x0001
-#define KRB5_TL_MOD_PRINC 0x0002
-#define KRB5_TL_KADM_DATA 0x0003
-#define KRB5_TL_KADM5_E_DATA 0x0004
-#define KRB5_TL_RB1_CHALLENGE 0x0005
+#define KRB5_TL_LAST_PWD_CHANGE 0x0001
+#define KRB5_TL_MOD_PRINC 0x0002
+#define KRB5_TL_KADM_DATA 0x0003
+#define KRB5_TL_KADM5_E_DATA 0x0004
+#define KRB5_TL_RB1_CHALLENGE 0x0005
#ifdef SECURID
#define KRB5_TL_SECURID_STATE 0x0006
#define KRB5_TL_DB_ARGS 0x7fff
@@ -227,14 +228,14 @@ typedef struct _krb5_keylist_node {
* Determines the number of failed KDC requests before DISALLOW_ALL_TIX is set
* on the principal.
*/
-#define KRB5_MAX_FAIL_COUNT 5
+#define KRB5_MAX_FAIL_COUNT 5
/* XXX depends on knowledge of krb5_parse_name() formats */
-#define KRB5_KDB_M_NAME "K/M" /* Kerberos/Master */
+#define KRB5_KDB_M_NAME "K/M" /* Kerberos/Master */
/* prompts used by default when reading the KDC password from the keyboard. */
-#define KRB5_KDC_MKEY_1 "Enter KDC database master key"
-#define KRB5_KDC_MKEY_2 "Re-enter KDC database master key to verify"
+#define KRB5_KDC_MKEY_1 "Enter KDC database master key"
+#define KRB5_KDC_MKEY_2 "Re-enter KDC database master key to verify"
extern char *krb5_mkey_pwd_prompt1;
@@ -247,12 +248,12 @@ extern char *krb5_mkey_pwd_prompt2;
*/
#ifdef _KRB5_INT_H
#include "k5-platform.h"
-#define krb5_kdb_decode_int16(cp, i16) \
- *((krb5_int16 *) &(i16)) = load_16_le(cp)
-#define krb5_kdb_decode_int32(cp, i32) \
- *((krb5_int32 *) &(i32)) = load_32_le(cp)
-#define krb5_kdb_encode_int16(i16, cp) store_16_le(i16, cp)
-#define krb5_kdb_encode_int32(i32, cp) store_32_le(i32, cp)
+#define krb5_kdb_decode_int16(cp, i16) \
+ *((krb5_int16 *) &(i16)) = load_16_le(cp)
+#define krb5_kdb_decode_int32(cp, i32) \
+ *((krb5_int32 *) &(i32)) = load_32_le(cp)
+#define krb5_kdb_encode_int16(i16, cp) store_16_le(i16, cp)
+#define krb5_kdb_encode_int32(i32, cp) store_32_le(i32, cp)
#endif /* _KRB5_INT_H */
#define KRB5_KDB_OPEN_RW 0
@@ -298,34 +299,34 @@ krb5_error_code krb5_db_set_option ( krb5_context kcontext, int option, void *va
krb5_error_code krb5_db_lock ( krb5_context kcontext, int lock_mode );
krb5_error_code krb5_db_unlock ( krb5_context kcontext );
krb5_error_code krb5_db_get_principal ( krb5_context kcontext,
- krb5_const_principal search_for,
- krb5_db_entry *entries,
- int *nentries,
- krb5_boolean *more );
+ krb5_const_principal search_for,
+ krb5_db_entry *entries,
+ int *nentries,
+ krb5_boolean *more );
krb5_error_code krb5_db_free_principal ( krb5_context kcontext,
- krb5_db_entry *entry,
- int count );
+ krb5_db_entry *entry,
+ int count );
krb5_error_code krb5_db_put_principal ( krb5_context kcontext,
- krb5_db_entry *entries,
- int *nentries);
+ krb5_db_entry *entries,
+ int *nentries);
krb5_error_code krb5_db_delete_principal ( krb5_context kcontext,
- krb5_principal search_for,
- int *nentries );
+ krb5_principal search_for,
+ int *nentries );
krb5_error_code krb5_db_iterate ( krb5_context kcontext,
- char *match_entry,
- int (*func) (krb5_pointer, krb5_db_entry *),
- krb5_pointer func_arg );
+ char *match_entry,
+ int (*func) (krb5_pointer, krb5_db_entry *),
+ krb5_pointer func_arg );
krb5_error_code krb5_supported_realms ( krb5_context kcontext,
- char **realms );
+ char **realms );
krb5_error_code krb5_free_supported_realms ( krb5_context kcontext,
- char **realms );
+ char **realms );
krb5_error_code krb5_db_set_master_key_ext ( krb5_context kcontext,
- char *pwd,
- krb5_keyblock *key );
+ char *pwd,
+ krb5_keyblock *key );
krb5_error_code krb5_db_set_mkey ( krb5_context context,
- krb5_keyblock *key);
+ krb5_keyblock *key);
krb5_error_code krb5_db_get_mkey ( krb5_context kcontext,
- krb5_keyblock **key );
+ krb5_keyblock **key );
krb5_error_code krb5_db_set_mkey_list( krb5_context context,
krb5_keylist_node * keylist);
@@ -334,85 +335,85 @@ krb5_error_code krb5_db_get_mkey_list( krb5_context kcontext,
krb5_keylist_node ** keylist);
krb5_error_code krb5_db_free_master_key ( krb5_context kcontext,
- krb5_keyblock *key );
+ krb5_keyblock *key );
krb5_error_code krb5_db_store_master_key ( krb5_context kcontext,
- char *keyfile,
- krb5_principal mname,
- krb5_kvno kvno,
- krb5_keyblock *key,
- char *master_pwd);
+ char *keyfile,
+ krb5_principal mname,
+ krb5_kvno kvno,
+ krb5_keyblock *key,
+ char *master_pwd);
krb5_error_code krb5_db_store_master_key_list ( krb5_context kcontext,
- char *keyfile,
- krb5_principal mname,
- krb5_keylist_node *keylist,
- char *master_pwd);
+ char *keyfile,
+ krb5_principal mname,
+ krb5_keylist_node *keylist,
+ char *master_pwd);
krb5_error_code krb5_db_fetch_mkey ( krb5_context context,
- krb5_principal mname,
- krb5_enctype etype,
- krb5_boolean fromkeyboard,
- krb5_boolean twice,
- char *db_args,
+ krb5_principal mname,
+ krb5_enctype etype,
+ krb5_boolean fromkeyboard,
+ krb5_boolean twice,
+ char *db_args,
krb5_kvno *kvno,
- krb5_data *salt,
- krb5_keyblock *key);
+ krb5_data *salt,
+ krb5_keyblock *key);
krb5_error_code krb5_db_verify_master_key ( krb5_context kcontext,
- krb5_principal mprinc,
+ krb5_principal mprinc,
krb5_kvno kvno,
- krb5_keyblock *mkey );
+ krb5_keyblock *mkey );
krb5_error_code
krb5_db_fetch_mkey_list( krb5_context context,
- krb5_principal mname,
- const krb5_keyblock * mkey,
- krb5_kvno mkvno,
- krb5_keylist_node **mkeys_list );
+ krb5_principal mname,
+ const krb5_keyblock * mkey,
+ krb5_kvno mkvno,
+ krb5_keylist_node **mkeys_list );
krb5_error_code
krb5_db_free_mkey_list( krb5_context context,
- krb5_keylist_node *mkey_list );
+ krb5_keylist_node *mkey_list );
krb5_error_code
-krb5_dbe_find_enctype( krb5_context kcontext,
- krb5_db_entry *dbentp,
- krb5_int32 ktype,
- krb5_int32 stype,
- krb5_int32 kvno,
- krb5_key_data **kdatap);
+krb5_dbe_find_enctype( krb5_context kcontext,
+ krb5_db_entry *dbentp,
+ krb5_int32 ktype,
+ krb5_int32 stype,
+ krb5_int32 kvno,
+ krb5_key_data **kdatap);
krb5_error_code krb5_dbe_search_enctype ( krb5_context kcontext,
- krb5_db_entry *dbentp,
- krb5_int32 *start,
- krb5_int32 ktype,
- krb5_int32 stype,
- krb5_int32 kvno,
- krb5_key_data **kdatap);
+ krb5_db_entry *dbentp,
+ krb5_int32 *start,
+ krb5_int32 ktype,
+ krb5_int32 stype,
+ krb5_int32 kvno,
+ krb5_key_data **kdatap);
krb5_error_code
krb5_db_setup_mkey_name ( krb5_context context,
- const char *keyname,
- const char *realm,
- char **fullname,
- krb5_principal *principal);
+ const char *keyname,
+ const char *realm,
+ char **fullname,
+ krb5_principal *principal);
krb5_error_code
-krb5_dbekd_decrypt_key_data( krb5_context context,
- const krb5_keyblock * mkey,
- const krb5_key_data * key_data,
- krb5_keyblock * dbkey,
- krb5_keysalt * keysalt);
+krb5_dbekd_decrypt_key_data( krb5_context context,
+ const krb5_keyblock * mkey,
+ const krb5_key_data * key_data,
+ krb5_keyblock * dbkey,
+ krb5_keysalt * keysalt);
krb5_error_code
-krb5_dbekd_encrypt_key_data( krb5_context context,
- const krb5_keyblock * mkey,
- const krb5_keyblock * dbkey,
- const krb5_keysalt * keysalt,
- int keyver,
- krb5_key_data * key_data);
+krb5_dbekd_encrypt_key_data( krb5_context context,
+ const krb5_keyblock * mkey,
+ const krb5_keyblock * dbkey,
+ const krb5_keysalt * keysalt,
+ int keyver,
+ krb5_key_data * key_data);
krb5_error_code
krb5_dbe_fetch_act_key_list(krb5_context context,
- krb5_principal princ,
- krb5_actkvno_node **act_key_list);
+ krb5_principal princ,
+ krb5_actkvno_node **act_key_list);
krb5_error_code
krb5_dbe_find_act_mkey( krb5_context context,
@@ -422,79 +423,79 @@ krb5_dbe_find_act_mkey( krb5_context context,
krb5_keyblock ** act_mkey);
krb5_error_code
-krb5_dbe_find_mkey( krb5_context context,
+krb5_dbe_find_mkey( krb5_context context,
krb5_keylist_node * mkey_list,
krb5_db_entry * entry,
krb5_keyblock ** mkey);
krb5_error_code
krb5_dbe_lookup_mkvno( krb5_context context,
- krb5_db_entry * entry,
- krb5_kvno * mkvno);
+ krb5_db_entry * entry,
+ krb5_kvno * mkvno);
krb5_error_code
krb5_dbe_lookup_mod_princ_data( krb5_context context,
- krb5_db_entry * entry,
- krb5_timestamp * mod_time,
- krb5_principal * mod_princ);
+ krb5_db_entry * entry,
+ krb5_timestamp * mod_time,
+ krb5_principal * mod_princ);
krb5_error_code
krb5_dbe_lookup_mkey_aux( krb5_context context,
- krb5_db_entry * entry,
- krb5_mkey_aux_node ** mkey_aux_data_list);
+ krb5_db_entry * entry,
+ krb5_mkey_aux_node ** mkey_aux_data_list);
krb5_error_code
krb5_dbe_update_mkvno( krb5_context context,
- krb5_db_entry * entry,
- krb5_kvno mkvno);
+ krb5_db_entry * entry,
+ krb5_kvno mkvno);
krb5_error_code
krb5_dbe_lookup_actkvno( krb5_context context,
- krb5_db_entry * entry,
- krb5_actkvno_node ** actkvno_list);
+ krb5_db_entry * entry,
+ krb5_actkvno_node ** actkvno_list);
krb5_error_code
krb5_dbe_update_mkey_aux( krb5_context context,
- krb5_db_entry * entry,
- krb5_mkey_aux_node * mkey_aux_data_list);
+ krb5_db_entry * entry,
+ krb5_mkey_aux_node * mkey_aux_data_list);
krb5_error_code
krb5_dbe_update_actkvno(krb5_context context,
- krb5_db_entry * entry,
- const krb5_actkvno_node *actkvno_list);
+ krb5_db_entry * entry,
+ const krb5_actkvno_node *actkvno_list);
krb5_error_code
krb5_dbe_update_last_pwd_change( krb5_context context,
- krb5_db_entry * entry,
- krb5_timestamp stamp);
+ krb5_db_entry * entry,
+ krb5_timestamp stamp);
krb5_error_code
krb5_dbe_lookup_tl_data( krb5_context context,
- krb5_db_entry * entry,
- krb5_tl_data * ret_tl_data);
+ krb5_db_entry * entry,
+ krb5_tl_data * ret_tl_data);
krb5_error_code
krb5_dbe_create_key_data( krb5_context context,
- krb5_db_entry * entry);
+ krb5_db_entry * entry);
krb5_error_code
krb5_dbe_update_mod_princ_data( krb5_context context,
- krb5_db_entry * entry,
- krb5_timestamp mod_date,
- krb5_const_principal mod_princ);
+ krb5_db_entry * entry,
+ krb5_timestamp mod_date,
+ krb5_const_principal mod_princ);
void *krb5_db_alloc( krb5_context kcontext,
- void *ptr,
- size_t size );
+ void *ptr,
+ size_t size );
void krb5_db_free( krb5_context kcontext,
- void *ptr);
+ void *ptr);
krb5_error_code
krb5_dbe_lookup_last_pwd_change( krb5_context context,
- krb5_db_entry * entry,
- krb5_timestamp * stamp);
+ krb5_db_entry * entry,
+ krb5_timestamp * stamp);
krb5_error_code
krb5_dbe_delete_tl_data( krb5_context context,
@@ -503,47 +504,47 @@ krb5_dbe_delete_tl_data( krb5_context context,
krb5_error_code
krb5_dbe_update_tl_data( krb5_context context,
- krb5_db_entry * entry,
- krb5_tl_data * new_tl_data);
+ krb5_db_entry * entry,
+ krb5_tl_data * new_tl_data);
krb5_error_code
-krb5_dbe_cpw( krb5_context kcontext,
- krb5_keyblock * master_key,
- krb5_key_salt_tuple * ks_tuple,
- int ks_tuple_count,
- char * passwd,
- int new_kvno,
- krb5_boolean keepold,
- krb5_db_entry * db_entry);
+krb5_dbe_cpw( krb5_context kcontext,
+ krb5_keyblock * master_key,
+ krb5_key_salt_tuple * ks_tuple,
+ int ks_tuple_count,
+ char * passwd,
+ int new_kvno,
+ krb5_boolean keepold,
+ krb5_db_entry * db_entry);
krb5_error_code
-krb5_dbe_ark( krb5_context context,
- krb5_keyblock * master_key,
- krb5_key_salt_tuple * ks_tuple,
- int ks_tuple_count,
- krb5_db_entry * db_entry);
+krb5_dbe_ark( krb5_context context,
+ krb5_keyblock * master_key,
+ krb5_key_salt_tuple * ks_tuple,
+ int ks_tuple_count,
+ krb5_db_entry * db_entry);
krb5_error_code
-krb5_dbe_crk( krb5_context context,
- krb5_keyblock * master_key,
- krb5_key_salt_tuple * ks_tuple,
- int ks_tuple_count,
- krb5_boolean keepold,
- krb5_db_entry * db_entry);
+krb5_dbe_crk( krb5_context context,
+ krb5_keyblock * master_key,
+ krb5_key_salt_tuple * ks_tuple,
+ int ks_tuple_count,
+ krb5_boolean keepold,
+ krb5_db_entry * db_entry);
krb5_error_code
-krb5_dbe_apw( krb5_context context,
- krb5_keyblock * master_key,
- krb5_key_salt_tuple * ks_tuple,
- int ks_tuple_count,
- char * passwd,
- krb5_db_entry * db_entry);
+krb5_dbe_apw( krb5_context context,
+ krb5_keyblock * master_key,
+ krb5_key_salt_tuple * ks_tuple,
+ int ks_tuple_count,
+ char * passwd,
+ krb5_db_entry * db_entry);
int
-krb5_db_get_key_data_kvno( krb5_context context,
- int count,
- krb5_key_data * data);
+krb5_db_get_key_data_kvno( krb5_context context,
+ int count,
+ krb5_key_data * data);
/* default functions. Should not be directly called */
@@ -553,140 +554,138 @@ krb5_db_get_key_data_kvno( krb5_context context,
krb5_error_code
krb5_dbe_def_search_enctype( krb5_context kcontext,
- krb5_db_entry *dbentp,
- krb5_int32 *start,
- krb5_int32 ktype,
- krb5_int32 stype,
- krb5_int32 kvno,
- krb5_key_data **kdatap);
+ krb5_db_entry *dbentp,
+ krb5_int32 *start,
+ krb5_int32 ktype,
+ krb5_int32 stype,
+ krb5_int32 kvno,
+ krb5_key_data **kdatap);
krb5_error_code
krb5_def_store_mkey( krb5_context context,
- char *keyfile,
- krb5_principal mname,
- krb5_kvno kvno,
- krb5_keyblock *key,
- char *master_pwd);
+ char *keyfile,
+ krb5_principal mname,
+ krb5_kvno kvno,
+ krb5_keyblock *key,
+ char *master_pwd);
krb5_error_code
krb5_def_store_mkey_list( krb5_context context,
- char *keyfile,
- krb5_principal mname,
- krb5_keylist_node *keylist,
- char *master_pwd);
+ char *keyfile,
+ krb5_principal mname,
+ krb5_keylist_node *keylist,
+ char *master_pwd);
krb5_error_code
krb5_db_def_fetch_mkey( krb5_context context,
- krb5_principal mname,
- krb5_keyblock *key,
- krb5_kvno *kvno,
- char *db_args);
+ krb5_principal mname,
+ krb5_keyblock *key,
+ krb5_kvno *kvno,
+ char *db_args);
krb5_error_code
krb5_def_verify_master_key( krb5_context context,
- krb5_principal mprinc,
- krb5_kvno kvno,
- krb5_keyblock *mkey);
+ krb5_principal mprinc,
+ krb5_kvno kvno,
+ krb5_keyblock *mkey);
krb5_error_code
krb5_def_fetch_mkey_list( krb5_context context,
- krb5_principal mprinc,
- const krb5_keyblock *mkey,
- krb5_kvno mkvno,
- krb5_keylist_node **mkeys_list);
+ krb5_principal mprinc,
+ const krb5_keyblock *mkey,
+ krb5_kvno mkvno,
+ krb5_keylist_node **mkeys_list);
krb5_error_code kdb_def_set_mkey ( krb5_context kcontext,
- char *pwd,
- krb5_keyblock *key );
+ char *pwd,
+ krb5_keyblock *key );
krb5_error_code kdb_def_set_mkey_list ( krb5_context kcontext,
- krb5_keylist_node *keylist );
+ krb5_keylist_node *keylist );
krb5_error_code kdb_def_get_mkey ( krb5_context kcontext,
- krb5_keyblock **key );
+ krb5_keyblock **key );
krb5_error_code kdb_def_get_mkey_list ( krb5_context kcontext,
- krb5_keylist_node **keylist );
+ krb5_keylist_node **keylist );
krb5_error_code
-krb5_dbe_def_cpw( krb5_context context,
- krb5_keyblock * master_key,
- krb5_key_salt_tuple * ks_tuple,
- int ks_tuple_count,
- char * passwd,
- int new_kvno,
- krb5_boolean keepold,
- krb5_db_entry * db_entry);
+krb5_dbe_def_cpw( krb5_context context,
+ krb5_keyblock * master_key,
+ krb5_key_salt_tuple * ks_tuple,
+ int ks_tuple_count,
+ char * passwd,
+ int new_kvno,
+ krb5_boolean keepold,
+ krb5_db_entry * db_entry);
krb5_error_code
krb5_def_promote_db(krb5_context, char *, char **);
krb5_error_code
-krb5_dbekd_def_decrypt_key_data( krb5_context context,
- const krb5_keyblock * mkey,
- const krb5_key_data * key_data,
- krb5_keyblock * dbkey,
- krb5_keysalt * keysalt);
+krb5_dbekd_def_decrypt_key_data( krb5_context context,
+ const krb5_keyblock * mkey,
+ const krb5_key_data * key_data,
+ krb5_keyblock * dbkey,
+ krb5_keysalt * keysalt);
krb5_error_code
-krb5_dbekd_def_encrypt_key_data( krb5_context context,
- const krb5_keyblock * mkey,
- const krb5_keyblock * dbkey,
- const krb5_keysalt * keysalt,
- int keyver,
- krb5_key_data * key_data);
+krb5_dbekd_def_encrypt_key_data( krb5_context context,
+ const krb5_keyblock * mkey,
+ const krb5_keyblock * dbkey,
+ const krb5_keysalt * keysalt,
+ int keyver,
+ krb5_key_data * key_data);
krb5_error_code
-krb5_dbekd_def_decrypt_key_data( krb5_context context,
- const krb5_keyblock * mkey,
- const krb5_key_data * key_data,
- krb5_keyblock * dbkey,
- krb5_keysalt * keysalt);
+krb5_dbekd_def_decrypt_key_data( krb5_context context,
+ const krb5_keyblock * mkey,
+ const krb5_key_data * key_data,
+ krb5_keyblock * dbkey,
+ krb5_keysalt * keysalt);
krb5_error_code
-krb5_dbekd_def_encrypt_key_data( krb5_context context,
- const krb5_keyblock * mkey,
- const krb5_keyblock * dbkey,
- const krb5_keysalt * keysalt,
- int keyver,
- krb5_key_data * key_data);
+krb5_dbekd_def_encrypt_key_data( krb5_context context,
+ const krb5_keyblock * mkey,
+ const krb5_keyblock * dbkey,
+ const krb5_keysalt * keysalt,
+ int keyver,
+ krb5_key_data * key_data);
krb5_error_code
krb5_db_create_policy( krb5_context kcontext,
- osa_policy_ent_t policy);
+ osa_policy_ent_t policy);
krb5_error_code
krb5_db_get_policy ( krb5_context kcontext,
- char *name,
- osa_policy_ent_t *policy,
- int *nentries);
+ char *name,
+ osa_policy_ent_t *policy,
+ int *nentries);
krb5_error_code
krb5_db_put_policy( krb5_context kcontext,
- osa_policy_ent_t policy);
+ osa_policy_ent_t policy);
krb5_error_code
krb5_db_iter_policy( krb5_context kcontext,
- char *match_entry,
- osa_adb_iter_policy_func func,
- void *data);
+ char *match_entry,
+ osa_adb_iter_policy_func func,
+ void *data);
krb5_error_code
krb5_db_delete_policy( krb5_context kcontext,
- char *policy);
+ char *policy);
void
krb5_db_free_policy( krb5_context kcontext,
- osa_policy_ent_t policy);
+ osa_policy_ent_t policy);
krb5_error_code
-krb5_db_set_context
- (krb5_context, void *db_context);
+krb5_db_set_context(krb5_context, void *db_context);
krb5_error_code
-krb5_db_get_context
- (krb5_context, void **db_context);
+krb5_db_get_context(krb5_context, void **db_context);
void
krb5_dbe_free_key_data_contents(krb5_context, krb5_key_data *);
@@ -703,22 +702,22 @@ krb5_dbe_free_mkey_aux_list(krb5_context, krb5_mkey_aux_node *);
void
krb5_dbe_free_tl_data(krb5_context, krb5_tl_data *);
-#define KRB5_KDB_DEF_FLAGS 0
+#define KRB5_KDB_DEF_FLAGS 0
-#define KDB_MAX_DB_NAME 128
-#define KDB_REALM_SECTION "realms"
-#define KDB_MODULE_POINTER "database_module"
-#define KDB_MODULE_DEF_SECTION "dbdefaults"
-#define KDB_MODULE_SECTION "dbmodules"
-#define KDB_LIB_POINTER "db_library"
-#define KDB_DATABASE_CONF_FILE DEFAULT_SECURE_PROFILE_PATH
-#define KDB_DATABASE_ENV_PROF KDC_PROFILE_ENV
+#define KDB_MAX_DB_NAME 128
+#define KDB_REALM_SECTION "realms"
+#define KDB_MODULE_POINTER "database_module"
+#define KDB_MODULE_DEF_SECTION "dbdefaults"
+#define KDB_MODULE_SECTION "dbmodules"
+#define KDB_LIB_POINTER "db_library"
+#define KDB_DATABASE_CONF_FILE DEFAULT_SECURE_PROFILE_PATH
+#define KDB_DATABASE_ENV_PROF KDC_PROFILE_ENV
-#define KRB5_KDB_OPEN_RW 0
-#define KRB5_KDB_OPEN_RO 1
+#define KRB5_KDB_OPEN_RW 0
+#define KRB5_KDB_OPEN_RO 1
-#define KRB5_KDB_OPT_SET_DB_NAME 0
-#define KRB5_KDB_OPT_SET_LOCK_MODE 1
+#define KRB5_KDB_OPT_SET_DB_NAME 0
+#define KRB5_KDB_OPT_SET_LOCK_MODE 1
typedef struct _kdb_vftabl {
short int maj_ver;
@@ -727,90 +726,90 @@ typedef struct _kdb_vftabl {
krb5_error_code (*init_library)();
krb5_error_code (*fini_library)();
krb5_error_code (*init_module) ( krb5_context kcontext,
- char * conf_section,
- char ** db_args,
- int mode );
+ char * conf_section,
+ char ** db_args,
+ int mode );
krb5_error_code (*fini_module) ( krb5_context kcontext );
krb5_error_code (*db_create) ( krb5_context kcontext,
- char * conf_section,
- char ** db_args );
+ char * conf_section,
+ char ** db_args );
krb5_error_code (*db_destroy) ( krb5_context kcontext,
- char *conf_section,
- char ** db_args );
+ char *conf_section,
+ char ** db_args );
krb5_error_code (*db_get_age) ( krb5_context kcontext,
- char *db_name,
- time_t *age );
+ char *db_name,
+ time_t *age );
krb5_error_code (*db_set_option) ( krb5_context kcontext,
- int option,
- void *value );
+ int option,
+ void *value );
krb5_error_code (*db_lock) ( krb5_context kcontext,
- int mode );
+ int mode );
krb5_error_code (*db_unlock) ( krb5_context kcontext);
krb5_error_code (*db_get_principal) ( krb5_context kcontext,
- krb5_const_principal search_for,
- unsigned int flags,
- krb5_db_entry *entries,
- int *nentries,
- krb5_boolean *more );
+ krb5_const_principal search_for,
+ unsigned int flags,
+ krb5_db_entry *entries,
+ int *nentries,
+ krb5_boolean *more );
krb5_error_code (*db_free_principal) ( krb5_context kcontext,
- krb5_db_entry *entry,
- int count );
+ krb5_db_entry *entry,
+ int count );
krb5_error_code (*db_put_principal) ( krb5_context kcontext,
- krb5_db_entry *entries,
- int *nentries,
- char **db_args);
+ krb5_db_entry *entries,
+ int *nentries,
+ char **db_args);
krb5_error_code (*db_delete_principal) ( krb5_context kcontext,
- krb5_const_principal search_for,
- int *nentries );
+ krb5_const_principal search_for,
+ int *nentries );
krb5_error_code (*db_iterate) ( krb5_context kcontext,
- char *match_entry,
- int (*func) (krb5_pointer, krb5_db_entry *),
- krb5_pointer func_arg );
+ char *match_entry,
+ int (*func) (krb5_pointer, krb5_db_entry *),
+ krb5_pointer func_arg );
krb5_error_code (*db_create_policy) ( krb5_context kcontext,
- osa_policy_ent_t policy );
+ osa_policy_ent_t policy );
krb5_error_code (*db_get_policy) ( krb5_context kcontext,
- char *name,
- osa_policy_ent_t *policy,
- int *cnt);
+ char *name,
+ osa_policy_ent_t *policy,
+ int *cnt);
krb5_error_code (*db_put_policy) ( krb5_context kcontext,
- osa_policy_ent_t policy );
+ osa_policy_ent_t policy );
krb5_error_code (*db_iter_policy) ( krb5_context kcontext,
- char *match_entry,
- osa_adb_iter_policy_func func,
- void *data );
+ char *match_entry,
+ osa_adb_iter_policy_func func,
+ void *data );
krb5_error_code (*db_delete_policy) ( krb5_context kcontext,
- char *policy );
+ char *policy );
void (*db_free_policy) ( krb5_context kcontext,
- osa_policy_ent_t val );
+ osa_policy_ent_t val );
krb5_error_code (*db_supported_realms) ( krb5_context kcontext,
- char **realms );
+ char **realms );
krb5_error_code (*db_free_supported_realms) ( krb5_context kcontext,
- char **realms );
+ char **realms );
const char * (*errcode_2_string) ( krb5_context kcontext,
- long err_code );
+ long err_code );
void (*release_errcode_string) (krb5_context kcontext, const char *msg);
@@ -821,96 +820,96 @@ typedef struct _kdb_vftabl {
/* optional functions */
krb5_error_code (*set_master_key) ( krb5_context kcontext,
- char *pwd,
- krb5_keyblock *key);
+ char *pwd,
+ krb5_keyblock *key);
krb5_error_code (*get_master_key) ( krb5_context kcontext,
- krb5_keyblock **key);
+ krb5_keyblock **key);
krb5_error_code (*set_master_key_list) ( krb5_context kcontext,
- krb5_keylist_node *keylist);
+ krb5_keylist_node *keylist);
krb5_error_code (*get_master_key_list) ( krb5_context kcontext,
- krb5_keylist_node **keylist);
+ krb5_keylist_node **keylist);
krb5_error_code (*setup_master_key_name) ( krb5_context kcontext,
- char *keyname,
- char *realm,
- char **fullname,
- krb5_principal *principal);
+ char *keyname,
+ char *realm,
+ char **fullname,
+ krb5_principal *principal);
krb5_error_code (*store_master_key) ( krb5_context kcontext,
- char *db_arg,
- krb5_principal mname,
- krb5_kvno kvno,
- krb5_keyblock *key,
- char *master_pwd);
+ char *db_arg,
+ krb5_principal mname,
+ krb5_kvno kvno,
+ krb5_keyblock *key,
+ char *master_pwd);
krb5_error_code (*fetch_master_key) ( krb5_context kcontext,
- krb5_principal mname,
- krb5_keyblock *key,
- krb5_kvno *kvno,
- char *db_args);
+ krb5_principal mname,
+ krb5_keyblock *key,
+ krb5_kvno *kvno,
+ char *db_args);
krb5_error_code (*verify_master_key) ( krb5_context kcontext,
- krb5_principal mprinc,
- krb5_kvno kvno,
- krb5_keyblock *mkey );
+ krb5_principal mprinc,
+ krb5_kvno kvno,
+ krb5_keyblock *mkey );
krb5_error_code (*fetch_master_key_list) (krb5_context kcontext,
- krb5_principal mname,
- const krb5_keyblock *key,
- krb5_kvno kvno,
- krb5_keylist_node **mkeys_list);
+ krb5_principal mname,
+ const krb5_keyblock *key,
+ krb5_kvno kvno,
+ krb5_keylist_node **mkeys_list);
krb5_error_code (*store_master_key_list) ( krb5_context kcontext,
- char *db_arg,
- krb5_principal mname,
- krb5_keylist_node *keylist,
- char *master_pwd);
+ char *db_arg,
+ krb5_principal mname,
+ krb5_keylist_node *keylist,
+ char *master_pwd);
krb5_error_code (*dbe_search_enctype) ( krb5_context kcontext,
- krb5_db_entry *dbentp,
- krb5_int32 *start,
- krb5_int32 ktype,
- krb5_int32 stype,
- krb5_int32 kvno,
- krb5_key_data **kdatap);
+ krb5_db_entry *dbentp,
+ krb5_int32 *start,
+ krb5_int32 ktype,
+ krb5_int32 stype,
+ krb5_int32 kvno,
+ krb5_key_data **kdatap);
krb5_error_code
- (*db_change_pwd) ( krb5_context context,
- krb5_keyblock * master_key,
- krb5_key_salt_tuple * ks_tuple,
- int ks_tuple_count,
- char * passwd,
- int new_kvno,
- krb5_boolean keepold,
- krb5_db_entry * db_entry);
+ (*db_change_pwd) ( krb5_context context,
+ krb5_keyblock * master_key,
+ krb5_key_salt_tuple * ks_tuple,
+ int ks_tuple_count,
+ char * passwd,
+ int new_kvno,
+ krb5_boolean keepold,
+ krb5_db_entry * db_entry);
/* Promote a temporary database to be the live one. */
krb5_error_code (*promote_db) (krb5_context context,
- char *conf_section,
- char **db_args);
+ char *conf_section,
+ char **db_args);
krb5_error_code (*dbekd_decrypt_key_data) ( krb5_context kcontext,
- const krb5_keyblock *mkey,
- const krb5_key_data *key_data,
- krb5_keyblock *dbkey,
- krb5_keysalt *keysalt );
+ const krb5_keyblock *mkey,
+ const krb5_key_data *key_data,
+ krb5_keyblock *dbkey,
+ krb5_keysalt *keysalt );
krb5_error_code (*dbekd_encrypt_key_data) ( krb5_context kcontext,
- const krb5_keyblock *mkey,
- const krb5_keyblock *dbkey,
- const krb5_keysalt *keyselt,
- int keyver,
- krb5_key_data *key_data );
+ const krb5_keyblock *mkey,
+ const krb5_keyblock *dbkey,
+ const krb5_keysalt *keyselt,
+ int keyver,
+ krb5_key_data *key_data );
krb5_error_code
(*db_invoke) ( krb5_context context,
- unsigned int method,
- const krb5_data *req,
- krb5_data *rep );
+ unsigned int method,
+ const krb5_data *req,
+ krb5_data *rep );
} kdb_vftabl;
#endif /* !defined(_WIN32) */