Fix a couple of cases in the SPNEGO implementation where a
half-constructed SPNEGO context could be leaked. Patch from
aberry@likewise.com, slightly amended.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@24591
dc483132-0cff-0310-8789-
dd5450dbe970
}
if (put_mech_set(*mechSet, &sc->DER_mechTypes) < 0) {
- generic_gss_release_oid(&tmpmin, &sc->internal_mech);
ret = GSS_S_FAILURE;
goto cleanup;
}
*/
sc->ctx_handle = GSS_C_NO_CONTEXT;
*ctx = (gss_ctx_id_t)sc;
+ sc = NULL;
*tokflag = INIT_TOKEN_SEND;
ret = GSS_S_CONTINUE_NEEDED;
cleanup:
+ release_spnego_ctx(&sc);
gss_release_oid_set(&tmpmin, mechSet);
return ret;
}
*return_token = INIT_TOKEN_SEND;
sc->firstpass = 1;
*ctx = (gss_ctx_id_t)sc;
+ sc = NULL;
ret = GSS_S_COMPLETE;
cleanup:
+ release_spnego_ctx(&sc);
gss_release_oid_set(&tmpmin, &supported_mechSet);
return ret;