summaryrefslogtreecommitdiffstats
path: root/src/kadmin
diff options
context:
space:
mode:
authorTom Yu <tlyu@mit.edu>2002-07-31 23:50:02 +0000
committerTom Yu <tlyu@mit.edu>2002-07-31 23:50:02 +0000
commitd1fb00973c32e51a9697f64c97d2d22c757b1f47 (patch)
tree2e1d8ed63843c9163313b1c02cd8f03025867e59 /src/kadmin
parent6981803c96c7c418974f292a3d9f66afda14a89e (diff)
downloadkrb5-d1fb00973c32e51a9697f64c97d2d22c757b1f47.tar.gz
krb5-d1fb00973c32e51a9697f64c97d2d22c757b1f47.tar.xz
krb5-d1fb00973c32e51a9697f64c97d2d22c757b1f47.zip
* dump.c (master_key_convert): Iterate over freeing
key_data->key_data_contents[j] rather than attempting to free key_data->key_data_contents. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@14678 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/kadmin')
-rw-r--r--src/kadmin/dbutil/ChangeLog6
-rw-r--r--src/kadmin/dbutil/dump.c8
2 files changed, 12 insertions, 2 deletions
diff --git a/src/kadmin/dbutil/ChangeLog b/src/kadmin/dbutil/ChangeLog
index fc369c86c..1ea67317a 100644
--- a/src/kadmin/dbutil/ChangeLog
+++ b/src/kadmin/dbutil/ChangeLog
@@ -1,3 +1,9 @@
+2002-07-31 Tom Yu <tlyu@mit.edu>
+
+ * dump.c (master_key_convert): Iterate over freeing
+ key_data->key_data_contents[j] rather than attempting to free
+ key_data->key_data_contents.
+
2002-07-29 Jen Selby <jenselby@mit.edu>
* kdb5_util.M: added documentation for some options.
diff --git a/src/kadmin/dbutil/dump.c b/src/kadmin/dbutil/dump.c
index b3198a8c1..3eff578d0 100644
--- a/src/kadmin/dbutil/dump.c
+++ b/src/kadmin/dbutil/dump.c
@@ -249,7 +249,7 @@ static krb5_error_code master_key_convert(context, db_entry)
krb5_error_code retval;
krb5_keyblock v5plainkey, *key_ptr;
krb5_keysalt keysalt;
- int i;
+ int i, j;
krb5_key_data new_key_data, *key_data;
krb5_boolean is_mkey;
@@ -278,7 +278,11 @@ static krb5_error_code master_key_convert(context, db_entry)
if (retval)
return retval;
krb5_free_keyblock_contents(context, &v5plainkey);
- free(key_data->key_data_contents);
+ for (j = 0; j < key_data->key_data_ver; j++) {
+ if (key_data->key_data_length[j]) {
+ free(key_data->key_data_contents[j]);
+ }
+ }
*key_data = new_key_data;
}
return 0;