We need to call scan_ccache() in order to notice that there
are credentials and read their expire time.
The call to scan_ccache() in the Leash case was inadvertently
removed as part of commit
8651f3339ccc5a623172a8edfb9cf522883acacd.
(cherry picked from commit
674f7d7abe2d4f8bc3fe791e4347a332e3ccfd41)
ticket: 8012 (new)
version_fixed: 1.12.3
subject: gssapi.dll tries to get initial creds even when some are present
status: resolved
assert(cred->name != NULL && cred->ccache == NULL);
#ifdef USE_LEASH
- return get_ccache_leash(context, cred->name->princ, &cred->ccache);
+ code = get_ccache_leash(context, cred->name->princ, &cred->ccache);
+ return code ? code : scan_ccache(context, cred);
#else
/* Check first whether we can acquire tickets, to avoid overwriting the
* extended error message from krb5_cc_cache_match. */