add flags to _hdb_{fetch,store}
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@6088 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
		| @@ -1,5 +1,5 @@ | ||||
| /* | ||||
|  * Copyright (c) 1997 Kungliga Tekniska H<>gskolan | ||||
|  * Copyright (c) 1997-1999 Kungliga Tekniska H<>gskolan | ||||
|  * (Royal Institute of Technology, Stockholm, Sweden).  | ||||
|  * All rights reserved.  | ||||
|  * | ||||
| @@ -104,7 +104,7 @@ hdb_value2entry(krb5_context context, krb5_data *value, hdb_entry *ent) | ||||
| } | ||||
|  | ||||
| krb5_error_code | ||||
| _hdb_fetch(krb5_context context, HDB *db, hdb_entry *entry) | ||||
| _hdb_fetch(krb5_context context, HDB *db, unsigned flags, hdb_entry *entry) | ||||
| { | ||||
|     krb5_data key, value; | ||||
|     int code; | ||||
| @@ -115,23 +115,22 @@ _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); | ||||
|     if (db->master_key_set && (flags & HDB_F_DECRYPT)) | ||||
| 	hdb_unseal_keys (db, entry); | ||||
|     krb5_data_free(&value); | ||||
|     return 0; | ||||
| } | ||||
|  | ||||
| krb5_error_code | ||||
| _hdb_store(krb5_context context, HDB *db, int replace, hdb_entry *entry) | ||||
| _hdb_store(krb5_context context, HDB *db, unsigned flags, hdb_entry *entry) | ||||
| { | ||||
|     krb5_data key, value; | ||||
|     int code; | ||||
|  | ||||
|     hdb_principal2key(context, entry->principal, &key); | ||||
|     if (db->master_key_set) | ||||
| 	hdb_seal_keys(entry, db->master_key); | ||||
|     hdb_seal_keys(db, entry); | ||||
|     hdb_entry2value(context, entry, &value); | ||||
|     code = db->_put(context, db, replace, key, value); | ||||
|     code = db->_put(context, db, flags & HDB_F_REPLACE, key, value); | ||||
|     krb5_data_free(&value); | ||||
|     krb5_data_free(&key); | ||||
|     return code; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Johan Danielsson
					Johan Danielsson