diff --git a/lib/hdb/db.c b/lib/hdb/db.c index 4b80a74fb..2ed054a63 100644 --- a/lib/hdb/db.c +++ b/lib/hdb/db.c @@ -95,7 +95,7 @@ DB_unlock(krb5_context context, HDB *db) db->lock_count--; return 0; } - assert( db->lock_count == 1 ); + heim_assert(db->lock_count == 1, "HDB lock/unlock sequence does not match"); db->lock_count--; if(fd < 0) { diff --git a/lib/hdb/db3.c b/lib/hdb/db3.c index 20ac64c89..e4d326b4a 100644 --- a/lib/hdb/db3.c +++ b/lib/hdb/db3.c @@ -102,7 +102,7 @@ DB_unlock(krb5_context context, HDB *db) db->lock_count--; return 0; } - assert( db->lock_count == 1 ); + heim_assert(db->lock_count == 1, "HDB lock/unlock sequence does not match"); db->lock_count--; if ((*d->fd)(d, &fd)) diff --git a/lib/hdb/hdb-mitdb.c b/lib/hdb/hdb-mitdb.c index 90c6aec99..b987922ff 100644 --- a/lib/hdb/hdb-mitdb.c +++ b/lib/hdb/hdb-mitdb.c @@ -678,7 +678,7 @@ mdb_unlock(krb5_context context, HDB *db) db->lock_count--; return 0; } - assert( db->lock_count == 1 ); + heim_assert(db->lock_count == 1, "HDB lock/unlock sequence does not match"); db->lock_count--; if(fd < 0) { diff --git a/lib/hdb/hdb_locl.h b/lib/hdb/hdb_locl.h index 58ca95bc4..c210b98b8 100644 --- a/lib/hdb/hdb_locl.h +++ b/lib/hdb/hdb_locl.h @@ -37,6 +37,7 @@ #define __HDB_LOCL_H__ #include +#include #include diff --git a/lib/hdb/keys.c b/lib/hdb/keys.c index 22d45595c..cf2d6dd25 100644 --- a/lib/hdb/keys.c +++ b/lib/hdb/keys.c @@ -56,19 +56,6 @@ hdb_free_keys(krb5_context context, int len, Key *keys) free (keys); } -void -hdb_free_keysets(krb5_context context, int len, hdb_keyset *keysets) -{ - size_t i; - - for (i = 0; i < len; i++) { - hdb_free_keys(context, keysets[i].keys.len, keysets[i].keys.val); - keysets[i].keys.val = NULL; - keysets[i].keys.len = 0; - } - free (keysets); -} - /* * for each entry in `default_keys' try to parse it as a sequence * of etype:salttype:salt, syntax of this if something like: diff --git a/lib/hdb/mkey.c b/lib/hdb/mkey.c index 07f627d1e..3cd676a4f 100644 --- a/lib/hdb/mkey.c +++ b/lib/hdb/mkey.c @@ -32,7 +32,6 @@ */ #include "hdb_locl.h" -#include #ifndef O_BINARY #define O_BINARY 0 #endif @@ -484,7 +483,7 @@ krb5_error_code hdb_unseal_keys_kvno(krb5_context context, HDB *db, krb5_kvno kvno, unsigned flags, hdb_entry *ent) { - krb5_error_code ret = KRB5KRB_AP_ERR_NOKEY; /* XXX need a better code? */ + krb5_error_code ret = HDB_ERR_NOENTRY; HDB_extension *ext; HDB_Ext_KeySet *hist_keys; Key *tmp_val; @@ -509,8 +508,6 @@ hdb_unseal_keys_kvno(krb5_context context, HDB *db, krb5_kvno kvno, kvno_diff = hdb_entry_get_kvno_diff_svc(ent); } - assert(kvno == 0 || kvno < ent->kvno); - ext = hdb_find_extension(ent, choice_HDB_extension_data_hist_keys); if (ext == NULL) return ret; @@ -602,32 +599,6 @@ hdb_unseal_keys_kvno(krb5_context context, HDB *db, krb5_kvno kvno, *hist_keys->val[i].set_time = tmp_set_time; return 0; - -#if 0 - tmp_keys = realloc(hist_keys->val, - sizeof (*hist_keys->val) * (hist_keys->len + 1)); - if (tmp_keys == NULL) - return ENOMEM; - - memmove(&tmp_keys[1], tmp_keys, - sizeof (*tmp_keys) * hist_keys->len); - tmp_keys[0].keys.len = ent->keys.len; - tmp_keys[0].keys.val = ent->keys.val; - tmp_keys[0].kvno = ent->kvno; - tmp_keys[0].set_time = set_time; - (void) hdb_entry_get_pw_change_time(ent, tmp_keys[0].set_time); - i++; - ent->keys.len = tmp_keys[i].keys.len; - ent->keys.val = tmp_keys[i].keys.val; - ent->kvno = kvno; - ent->flags.do_not_store = 1; - hist_keys->val = tmp_keys; - - memmove(&tmp_keys[i], &tmp_keys[i + 1], - sizeof (*tmp_keys) * (hist_keys->len - i)); - tmp_keys[hist_keys->len].keys.len = 0; - tmp_keys[hist_keys->len].keys.val = 0; -#endif } return (ret);