Add missing initialization of mandatory

This commit is contained in:
Nicolas Williams
2015-05-27 17:05:29 -05:00
parent b1af99aa81
commit 76965a2a14
6 changed files with 14 additions and 0 deletions

View File

@@ -453,6 +453,7 @@ hdb_entry_set_kvno_diff_clnt(krb5_context context, hdb_entry *entry,
if (diff > 16384)
return EINVAL;
ext.mandatory = FALSE;
ext.data.element = choice_HDB_extension_data_hist_kvno_diff_clnt;
ext.data.u.hist_kvno_diff_clnt = diff;
return hdb_replace_extension(context, entry, &ext);
@@ -485,6 +486,7 @@ hdb_entry_set_kvno_diff_svc(krb5_context context, hdb_entry *entry,
if (diff > 16384)
return EINVAL;
ext.mandatory = FALSE;
ext.data.element = choice_HDB_extension_data_hist_kvno_diff_svc;
ext.data.u.hist_kvno_diff_svc = diff;
return hdb_replace_extension(context, entry, &ext);

View File

@@ -227,6 +227,8 @@ hdb_add_current_keys_to_history(krb5_context context, hdb_entry *entry)
ext->data.element = choice_HDB_extension_data_hist_keys;
}
ext->mandatory = FALSE;
/*
* Copy in newest old keyset
*/
@@ -285,6 +287,7 @@ hdb_add_history_key(krb5_context context, hdb_entry *entry, krb5_kvno kvno, Key
extp = &ext;
}
extp->mandatory = FALSE;
hist_keys = &extp->data.u.hist_keys;
for (i = 0; i < hist_keys->len; i++) {

View File

@@ -119,6 +119,7 @@ change(void *server_handle,
HDB_extension ext;
memset(&ext, 0, sizeof (ext));
ext.mandatory = FALSE;
ext.data.element = choice_HDB_extension_data_hist_keys;
ret = hdb_replace_extension(context->context, &ent.entry, &ext);
if (ret)
@@ -235,6 +236,7 @@ kadm5_s_chpass_principal_with_key(void *server_handle,
HDB_extension ext;
memset(&ext, 0, sizeof (ext));
ext.mandatory = FALSE;
ext.data.element = choice_HDB_extension_data_hist_keys;
ext.data.u.hist_keys.len = 0;
ext.data.u.hist_keys.val = NULL;

View File

@@ -89,6 +89,9 @@ modify_principal(void *server_handle,
if ((mask & KADM5_POLICY)) {
HDB_extension ext;
memset(&ext, 0, sizeof(ext));
/* XXX should be TRUE, but we don't yet support policies */
ext.mandatory = FALSE;
ext.data.element = choice_HDB_extension_data_policy;
ext.data.u.policy = strdup(princ->policy);
if (ext.data.u.policy == NULL) {
@@ -97,6 +100,7 @@ modify_principal(void *server_handle,
}
/* This calls free_HDB_extension(), freeing ext.data.u.policy */
ret = hdb_replace_extension(context->context, &ent.entry, &ext);
free(ext.data.u.policy);
if (ret)
goto out2;
}

View File

@@ -97,6 +97,7 @@ kadm5_s_randkey_principal(void *server_handle,
HDB_extension ext;
memset(&ext, 0, sizeof (ext));
ext.mandatory = FALSE;
ext.data.element = choice_HDB_extension_data_hist_keys;
ext.data.u.hist_keys.len = 0;
ext.data.u.hist_keys.val = NULL;

View File

@@ -129,6 +129,7 @@ _kadm5_set_keys2(kadm5_server_context *context,
memset(&keys, 0, sizeof (keys));
memset(&hkset, 0, sizeof (hkset)); /* set set_time */
memset(&ext, 0, sizeof (ext));
ext.mandatory = FALSE;
ext.data.element = choice_HDB_extension_data_hist_keys;
memset(hist_keys, 0, sizeof (*hist_keys));
@@ -254,6 +255,7 @@ _kadm5_set_keys2(kadm5_server_context *context,
*/
free_HDB_extension(&ext);
free_Keys(&ent->keys);
free_hdb_keyset(&hkset);
ent->keys = keys;
hdb_entry_set_pw_change_time(context->context, ent, 0);
hdb_entry_clear_password(context->context, ent);