When copying most of the credentials from one cache to another in
copy_creds_except (called from get_vfy_cred, from
krb5_verify_init_creds), we need to free all of the credentials that
we read, not just the ones we copied.
[ghudson@mit.edu: edited commit message]
(cherry picked from commit
27b136d2e3181e787b2d4a03ee712d5d5137f5cd)
ticket: 8089 (new)
version_fixed: 1.11.6
status: resolved
while (!(ret = krb5_cc_next_cred(context, incc, &cur, &creds))) {
if (krb5_principal_compare(context, princ, creds.server))
- continue;
-
- ret = krb5_cc_store_cred(context, outcc, &creds);
+ ret = 0;
+ else
+ ret = krb5_cc_store_cred(context, outcc, &creds);
krb5_free_cred_contents(context, &creds);
if (ret)
goto cleanup;