aboutsummaryrefslogtreecommitdiff
path: root/src/lib/kdb/kdb5.c
diff options
context:
space:
mode:
authorWill Fiveash <will.fiveash@oracle.com>2009-02-05 20:57:09 +0000
committerWill Fiveash <will.fiveash@oracle.com>2009-02-05 20:57:09 +0000
commit3442622bf0e205fa829520868909a8b8d0771e9f (patch)
tree8be35abe65b5305b5506887a18b14f879db15182 /src/lib/kdb/kdb5.c
parent860da5ef64ad30db009eefaafb282a62489e56ff (diff)
downloadkrb5-3442622bf0e205fa829520868909a8b8d0771e9f.zip
krb5-3442622bf0e205fa829520868909a8b8d0771e9f.tar.gz
krb5-3442622bf0e205fa829520868909a8b8d0771e9f.tar.bz2
deal with memleaks in migrate mkey project
Ken R. told me that Coverity found several potential memleaks introduced by the mkey migration project. This addresses those leaks and tweaks the code formatting in a few places. ticket: 6371 Version_Reported: 1.7 Target_Version: 1.7 Tags: pullup git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@21900 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib/kdb/kdb5.c')
-rw-r--r--src/lib/kdb/kdb5.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/lib/kdb/kdb5.c b/src/lib/kdb/kdb5.c
index 442c28f..b17e8d1 100644
--- a/src/lib/kdb/kdb5.c
+++ b/src/lib/kdb/kdb5.c
@@ -115,11 +115,13 @@ krb5_dbe_free_key_data_contents(krb5_context context, krb5_key_data *key)
{
int i, idx;
- idx = (key->key_data_ver == 1 ? 1 : 2);
- for (i = 0; i < idx; i++) {
- if (key->key_data_contents[i]) {
- zap(key->key_data_contents[i], key->key_data_length[i]);
- free(key->key_data_contents[i]);
+ if (key) {
+ idx = (key->key_data_ver == 1 ? 1 : 2);
+ for (i = 0; i < idx; i++) {
+ if (key->key_data_contents[i]) {
+ zap(key->key_data_contents[i], key->key_data_length[i]);
+ free(key->key_data_contents[i]);
+ }
}
}
return;
@@ -2383,6 +2385,7 @@ krb5_dbe_lookup_mkey_aux(krb5_context context,
if (new_data->latest_mkey.key_data_contents[0] == NULL) {
krb5_dbe_free_mkey_aux_list(context, head_data);
+ free(new_data);
return (ENOMEM);
}
memcpy(new_data->latest_mkey.key_data_contents[0], curloc,