use hdb_unseal_key
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@2842 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
29
kdc/misc.c
29
kdc/misc.c
@@ -82,29 +82,12 @@ set_master_key(EncryptionKey *key)
|
|||||||
Key *
|
Key *
|
||||||
unseal_key(Key *key)
|
unseal_key(Key *key)
|
||||||
{
|
{
|
||||||
int i;
|
Key *new;
|
||||||
des_cblock iv;
|
|
||||||
int num = 0;
|
|
||||||
Key *new_key;
|
|
||||||
|
|
||||||
ALLOC(new_key);
|
|
||||||
copy_Key(key, new_key);
|
|
||||||
if(master_key_set){
|
if(master_key_set){
|
||||||
memset(&iv, 0, sizeof(iv));
|
new = hdb_unseal_key(key, master_key);
|
||||||
des_cfb64_encrypt(key->key.keyvalue.data,
|
}else{
|
||||||
new_key->key.keyvalue.data,
|
new = ALLOC(new);
|
||||||
key->key.keyvalue.length,
|
copy_Key(key, new);
|
||||||
master_key, &iv, &num, 0);
|
|
||||||
}
|
}
|
||||||
return new_key;
|
return new;
|
||||||
}
|
|
||||||
|
|
||||||
void
|
|
||||||
free_key(Key *key)
|
|
||||||
{
|
|
||||||
memset(key->key.keyvalue.data,
|
|
||||||
0,
|
|
||||||
key->key.keyvalue.length);
|
|
||||||
free_Key(key);
|
|
||||||
free(key);
|
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user