The Kerberos v5 plug-in for Network Identity Manager was not clearing
the list of prompts properly when a user changes the active identity
in the new credentials dialog. The stale prompts would be visible to
the user if the newly selected identity is invalid or the new identity
cannot be validated.
This patch clears the prompts if there is an identity change.
ticket: new
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@20028
dc483132-0cff-0310-8789-
dd5450dbe970
/* if the fiber is already in a kinit, cancel it */
if(g_fjob.state == FIBER_STATE_KINIT) {
+ khm_boolean clear_prompts = TRUE;
+
+ khui_cw_lock_nc(nc);
+ if (nc->n_identities > 0 &&
+ kcdb_identity_is_equal(nc->identities[0], g_fjob.identity)) {
+ clear_prompts = FALSE;
+ }
+ khui_cw_unlock_nc(nc);
+
g_fjob.command = FIBER_CMD_CANCEL;
SwitchToFiber(k5_kinit_fiber);
/* we get here when the cancel operation completes */
k5_free_kinit_job();
+
+ if (clear_prompts)
+ khui_cw_clear_prompts(nc);
}
khui_cw_lock_nc(nc);