Properly implement neg_mechs & GM_USE_MG_CRED

SPNEGO was already using union creds.  Now make the mechglue know about
it, delete all of the cred-related SPNEGO stubs that are now not called
(lib/gssapi/spnego/cred_stubs.c), and implement gss_get/set_neg_mechs()
by storing the OID set in the union cred.

This commit was essentially authored as much if not more by Luke Howard
<lukeh at padl.com> as much as by the listed author.
This commit is contained in:
Nicolas Williams
2020-04-18 22:15:00 -05:00
parent 2ec9e17042
commit a54761d68a
20 changed files with 397 additions and 418 deletions

View File

@@ -42,7 +42,11 @@ release_mech_cred(OM_uint32 *minor, struct _gss_mechanism_cred *mc)
{
OM_uint32 major;
major = mc->gmc_mech->gm_release_cred(minor, &mc->gmc_cred);
if (mc->gmc_mech->gm_release_cred != NULL)
major = mc->gmc_mech->gm_release_cred(minor, &mc->gmc_cred);
else
major = GSS_S_COMPLETE;
free(mc);
return major;