Try to not leak memory.
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@18823 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
@@ -77,6 +77,7 @@ do_mod_entry(krb5_principal principal, void *data)
|
||||
krb5_principal p;
|
||||
size_t size;
|
||||
|
||||
memset(&ext, 0, sizeof(ext));
|
||||
ext.mandatory = FALSE;
|
||||
ext.data.element = choice_HDB_extension_data_allowed_to_delegate_to;
|
||||
ext.data.u.allowed_to_delegate_to.len = 1;
|
||||
@@ -90,6 +91,7 @@ do_mod_entry(krb5_principal principal, void *data)
|
||||
|
||||
ASN1_MALLOC_ENCODE(HDB_extension, buf.data, buf.length,
|
||||
&ext, &size, ret);
|
||||
free_HDB_extension(&ext);
|
||||
if (ret)
|
||||
abort();
|
||||
if (buf.length != size)
|
||||
@@ -101,6 +103,7 @@ do_mod_entry(krb5_principal principal, void *data)
|
||||
tl->tl_data_length = buf.length;
|
||||
tl->tl_data_contents = buf.data;
|
||||
|
||||
princ.n_tl_data++;
|
||||
ptl = &princ.tl_data;
|
||||
while (*ptl != NULL)
|
||||
ptl = &(*ptl)->tl_data_next;
|
||||
|
@@ -207,5 +207,7 @@ main(int argc, char **argv)
|
||||
}
|
||||
|
||||
krb5_free_cred_contents(context, out);
|
||||
krb5_get_creds_opt_free(context, opt);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@@ -69,7 +69,6 @@ perform_tl_data(krb5_context context,
|
||||
hdb_entry_ex *ent,
|
||||
const krb5_tl_data *tl_data)
|
||||
{
|
||||
HDB_extension ext;
|
||||
kadm5_ret_t ret = 0;
|
||||
|
||||
if (tl_data->tl_data_type == KRB5_TL_PASSWORD) {
|
||||
@@ -94,6 +93,8 @@ perform_tl_data(krb5_context context,
|
||||
ret = hdb_entry_set_pw_change_time(context, &ent->entry, t);
|
||||
|
||||
} else if (tl_data->tl_data_type == KRB5_TL_EXTENSION) {
|
||||
HDB_extension ext;
|
||||
|
||||
ret = decode_HDB_extension(tl_data->tl_data_contents,
|
||||
tl_data->tl_data_length,
|
||||
&ext,
|
||||
@@ -102,7 +103,7 @@ perform_tl_data(krb5_context context,
|
||||
return KADM5_BAD_TL_TYPE;
|
||||
|
||||
ret = hdb_replace_extension(context, &ent->entry, &ext);
|
||||
|
||||
free_HDB_extension(&ext);
|
||||
} else {
|
||||
return KADM5_BAD_TL_TYPE;
|
||||
}
|
||||
|
Reference in New Issue
Block a user