diff --git a/lib/krb5/get_cred.c b/lib/krb5/get_cred.c index cf40172bb..bdc9a499d 100644 --- a/lib/krb5/get_cred.c +++ b/lib/krb5/get_cred.c @@ -1271,8 +1271,9 @@ next_rule: tgts = NULL; ret = _krb5_get_cred_kdc_any(context, flags, ccache, try_creds, NULL, NULL, out_creds, &tgts); - for(i = 0; tgts && tgts[i]; i++) { - krb5_cc_store_cred(context, ccache, tgts[i]); + for (i = 0; tgts && tgts[i]; i++) { + if ((options & KRB5_GC_NO_STORE) == 0) + krb5_cc_store_cred(context, ccache, tgts[i]); krb5_free_creds(context, tgts[i]); } free(tgts); @@ -1507,8 +1508,9 @@ next_rule: try_creds, opt ? opt->self : 0, opt ? opt->ticket : 0, out_creds, &tgts); - for(i = 0; tgts && tgts[i]; i++) { - krb5_cc_store_cred(context, ccache, tgts[i]); + for (i = 0; tgts && tgts[i]; i++) { + if ((options & KRB5_GC_NO_STORE) == 0) + krb5_cc_store_cred(context, ccache, tgts[i]); krb5_free_creds(context, tgts[i]); } free(tgts);