From 5d5e4f8c7ae612f421a635696d3625f0b06adad1 Mon Sep 17 00:00:00 2001 From: Assar Westerlund Date: Thu, 16 Oct 1997 04:13:21 +0000 Subject: [PATCH] do the seal and unsealing git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@3627 ec53bebd-3082-4978-b11e-865c3cabbd6b --- lib/hdb/common.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/hdb/common.c b/lib/hdb/common.c index cbeaa8cc4..11e03620c 100644 --- a/lib/hdb/common.c +++ b/lib/hdb/common.c @@ -83,6 +83,7 @@ hdb_entry2value(krb5_context context, hdb_entry *ent, krb5_data *value) unsigned char *buf; size_t len; int ret; + len = length_hdb_entry(ent); buf = malloc(len); if(buf == NULL) @@ -116,6 +117,8 @@ _hdb_fetch(krb5_context context, HDB *db, hdb_entry *entry) if(code) return code; hdb_value2entry(context, &value, entry); + if (db->master_key_set) + hdb_unseal_keys (entry, db->master_key); krb5_data_free(&value); return 0; } @@ -127,6 +130,8 @@ _hdb_store(krb5_context context, HDB *db, int replace, hdb_entry *entry) int code; hdb_principal2key(context, entry->principal, &key); + if (db->master_key_set) + hdb_seal_keys(entry, db->master_key); hdb_entry2value(context, entry, &value); code = db->_put(context, db, replace, key, value); krb5_data_free(&value);