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 * | ||||
| unseal_key(Key *key) | ||||
| { | ||||
|     int i; | ||||
|     des_cblock iv; | ||||
|     int num = 0; | ||||
|     Key *new_key; | ||||
|  | ||||
|     ALLOC(new_key); | ||||
|     copy_Key(key, new_key); | ||||
|     Key *new; | ||||
|     if(master_key_set){ | ||||
| 	memset(&iv, 0, sizeof(iv)); | ||||
| 	des_cfb64_encrypt(key->key.keyvalue.data,  | ||||
| 			  new_key->key.keyvalue.data,  | ||||
| 			  key->key.keyvalue.length,  | ||||
| 			  master_key, &iv, &num, 0); | ||||
| 	new = hdb_unseal_key(key, master_key); | ||||
|     }else{ | ||||
| 	new = ALLOC(new); | ||||
| 	copy_Key(key, new); | ||||
|     } | ||||
|     return new_key; | ||||
| } | ||||
|  | ||||
| void | ||||
| free_key(Key *key) | ||||
| { | ||||
|     memset(key->key.keyvalue.data,  | ||||
| 	   0, | ||||
| 	   key->key.keyvalue.length); | ||||
|     free_Key(key); | ||||
|     free(key); | ||||
|     return new; | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Johan Danielsson
					Johan Danielsson