From 1bedcf7fc43e45882edcb9eb17d0852a30babae3 Mon Sep 17 00:00:00 2001 From: Greg Hudson Date: Wed, 20 Jul 2016 17:08:55 -0400 Subject: [PATCH] Fix SPNEGO imported cred initialization In spnego_gss_import_cred(), use create_spnego_cred() to create the SPNEGO credential structure. Prior to this change, an imported SPNEGO cred did not initialize the no_ask_integ field (added by commit cf39ed349976908626cad3e05e17788f8334bce9, ticket #6938). ticket: 8460 (new) target_version: 1.14-next tags: pullup --- src/lib/gssapi/spnego/spnego_mech.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/src/lib/gssapi/spnego/spnego_mech.c b/src/lib/gssapi/spnego/spnego_mech.c index 7862d98e3a..9d6027ce80 100644 --- a/src/lib/gssapi/spnego/spnego_mech.c +++ b/src/lib/gssapi/spnego/spnego_mech.c @@ -2993,14 +2993,11 @@ spnego_gss_import_cred(OM_uint32 *minor_status, ret = gss_import_cred(minor_status, token, &mcred); if (GSS_ERROR(ret)) return (ret); - spcred = malloc(sizeof(*spcred)); - if (spcred == NULL) { - gss_release_cred(minor_status, &mcred); - *minor_status = ENOMEM; - return (GSS_S_FAILURE); - } - spcred->mcred = mcred; - spcred->neg_mechs = GSS_C_NULL_OID_SET; + + ret = create_spnego_cred(minor_status, mcred, &spcred); + if (GSS_ERROR(ret)) + return (ret); + *cred_handle = (gss_cred_id_t)spcred; return (ret); } -- 2.47.2