diff options
| author | Sam Hartman <hartmans@mit.edu> | 2009-01-03 23:19:42 +0000 |
|---|---|---|
| committer | Sam Hartman <hartmans@mit.edu> | 2009-01-03 23:19:42 +0000 |
| commit | 0ba5ccd7bb3ea15e44a87f84ca6feed8890f657d (patch) | |
| tree | 2049c9c2cb135fe36b14c0a171711259258d18ec /src/lib/kdb/kdb5.h | |
| parent | ff0a6514c9f4230938c29922d69cbd4e83691adf (diff) | |
| download | krb5-0ba5ccd7bb3ea15e44a87f84ca6feed8890f657d.tar.gz krb5-0ba5ccd7bb3ea15e44a87f84ca6feed8890f657d.tar.xz krb5-0ba5ccd7bb3ea15e44a87f84ca6feed8890f657d.zip | |
Merge mskrb-integ onto trunk
The mskrb-integ branch includes support for the following projects:
Projects/Aliases
* Projects/PAC and principal APIs
* Projects/AEAD encryption API
* Projects/GSSAPI DCE
* Projects/RFC 3244
In addition, it includes support for enctype negotiation, and a variety of GSS-API extensions.
In the KDC it includes support for protocol transition, constrained delegation
and a new authorization data interface.
The old authorization data interface is also supported.
This commit merges the mskrb-integ branch on to the trunk.
Additional review and testing is required.
Merge commit 'mskrb-integ' into trunk
ticket: new
status: open
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@21690 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib/kdb/kdb5.h')
| -rw-r--r-- | src/lib/kdb/kdb5.h | 168 |
1 files changed, 2 insertions, 166 deletions
diff --git a/src/lib/kdb/kdb5.h b/src/lib/kdb/kdb5.h index f9f449442..e3a1f2633 100644 --- a/src/lib/kdb/kdb5.h +++ b/src/lib/kdb/kdb5.h @@ -10,176 +10,12 @@ #include <utime.h> #include <k5-int.h> #include "kdb.h" +#include "kdb_ext.h" -#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_DB_GET_DB_CONTEXT(kcontext) (((kdb5_dal_handle*) (kcontext)->db_context)->db_context) +#define KRB5_DB_GET_DB_CONTEXT(kcontext) (((kdb5_dal_handle*) (kcontext)->dal_handle)->db_context) #define KRB5_DB_GET_PROFILE(kcontext) ((kcontext)->profile) #define KRB5_DB_GET_REALM(kcontext) ((kcontext)->default_realm) -typedef struct _kdb_vftabl{ - short int maj_ver; - short int min_ver; - - 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); - - krb5_error_code (*fini_module) (krb5_context kcontext); - - krb5_error_code (*db_create) (krb5_context kcontext, - char * conf_section, - char ** db_args); - - krb5_error_code (*db_destroy) (krb5_context kcontext, - char *conf_section, - char ** db_args); - - krb5_error_code (*db_get_age) (krb5_context kcontext, - char *db_name, - time_t *age); - - krb5_error_code (*db_set_option) (krb5_context kcontext, - int option, - void *value); - - krb5_error_code (*db_lock) (krb5_context kcontext, - int mode); - - krb5_error_code (*db_unlock) (krb5_context kcontext); - - krb5_error_code (*db_get_principal) (krb5_context kcontext, - krb5_const_principal search_for, - 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_error_code (*db_put_principal) (krb5_context kcontext, - 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_error_code (*db_iterate) (krb5_context kcontext, - 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); - - krb5_error_code (*db_get_policy) (krb5_context kcontext, - char *name, - osa_policy_ent_t *policy, - int *cnt); - - krb5_error_code (*db_put_policy) (krb5_context kcontext, - 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); - - - krb5_error_code (*db_delete_policy) (krb5_context kcontext, - char *policy); - - void (*db_free_policy) (krb5_context kcontext, - osa_policy_ent_t val); - - krb5_error_code (*db_supported_realms) (krb5_context kcontext, - char **realms); - - krb5_error_code (*db_free_supported_realms) (krb5_context kcontext, - char **realms); - - - const char * (*errcode_2_string) (krb5_context kcontext, - long err_code); - void (*release_errcode_string) (krb5_context kcontext, const char *msg); - - void * (*db_alloc) (krb5_context kcontext, void *ptr, size_t size); - void (*db_free) (krb5_context kcontext, void *ptr); - - - - /* optional functions */ - krb5_error_code (*set_master_key) (krb5_context kcontext, - char *pwd, - krb5_keyblock *key); - - krb5_error_code (*get_master_key) (krb5_context kcontext, - krb5_keyblock **key); - - - krb5_error_code (*setup_master_key_name) (krb5_context kcontext, - 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); - - krb5_error_code (*fetch_master_key) (krb5_context kcontext, - 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_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_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); - - /* Promote a temporary database to be the live one. */ - krb5_error_code (*promote_db) (krb5_context context, - char *conf_section, - char **db_args); - -} kdb_vftabl; - typedef struct _db_library { char name[KDB_MAX_DB_NAME]; int reference_cnt; |
