khm_krb5_initialize() is called in the krb5cred.dll and krb4cred.dll
credential providers in order to ensure that the caller has references
to a valid krb5_context and a valid krb5_ccache. If the krb5_cc_resolve()
call failed, the error code was not being returned to the caller.
Instead, success was returned which in turn would result in the caller
believing the NULL krb5_ccache pointer was in fact valid.
This fix resolves Microsoft's WER Event ID
432405961.
ticket: new
component: windows
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@19967
dc483132-0cff-0310-8789-
dd5450dbe970
krb5_ccache * cache)
{
#ifdef NO_KRB5
- return 0;
+ return -1;
#else
#ifdef SHOW_MESSAGE_IN_AN_ANNOYING_WAY
krb5_ccache *cache)
{
#ifdef NO_KRB5
- return(0);
+ return(-1);
#else
LPCSTR functionName = NULL;
int freeContextFlag = 0;
- krb5_error_code rc = 0;
+ krb5_error_code rc = -1;
krb5_flags flags = 0;
if (pkrb5_init_context == NULL)
if(UnicodeStrToAnsi(ccname, sizeof(ccname), wccname) == 0)
break;
- if((*pkrb5_cc_resolve)(*ctx, ccname, cache)) {
+ if(rc = (*pkrb5_cc_resolve)(*ctx, ccname, cache)) {
functionName = "krb5_cc_resolve()";
freeContextFlag = 1;
goto on_error;