Add missing initialization of mandatory
This commit is contained in:
		| @@ -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); | ||||
|   | ||||
| @@ -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++) { | ||||
|   | ||||
| @@ -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; | ||||
|   | ||||
| @@ -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; | ||||
|     } | ||||
|   | ||||
| @@ -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; | ||||
|   | ||||
| @@ -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); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Nicolas Williams
					Nicolas Williams