summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGreg Hudson <ghudson@mit.edu>2010-03-05 20:35:26 +0000
committerGreg Hudson <ghudson@mit.edu>2010-03-05 20:35:26 +0000
commit48a8cb4a973b23c3c11598eb4742fea36a37c4b5 (patch)
treee110b17413036d5dbcb06d0e1753fd33c48ddee0 /src
parent10b9de788381bd501f376ee6546e74dbb424d6f9 (diff)
downloadkrb5-48a8cb4a973b23c3c11598eb4742fea36a37c4b5.tar.gz
krb5-48a8cb4a973b23c3c11598eb4742fea36a37c4b5.tar.xz
krb5-48a8cb4a973b23c3c11598eb4742fea36a37c4b5.zip
Release the internal_name field of a SPNEGO context if it has not been
claimed for a caller argument. ticket: 6674 target_version: 1.8.1 tags: pullup git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23772 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src')
-rw-r--r--src/lib/gssapi/spnego/spnego_mech.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/lib/gssapi/spnego/spnego_mech.c b/src/lib/gssapi/spnego/spnego_mech.c
index f7fcb5e55..95e450979 100644
--- a/src/lib/gssapi/spnego/spnego_mech.c
+++ b/src/lib/gssapi/spnego/spnego_mech.c
@@ -1742,6 +1742,7 @@ cleanup:
if (sc->internal_name != GSS_C_NO_NAME &&
src_name != NULL) {
*src_name = sc->internal_name;
+ sc->internal_name = GSS_C_NO_NAME;
}
release_spnego_ctx(&sc);
} else if (ret != GSS_S_CONTINUE_NEEDED) {
@@ -2627,6 +2628,8 @@ release_spnego_ctx(spnego_gss_ctx_id_t *ctx)
(void) generic_gss_release_oid(&minor_stat,
&context->internal_mech);
+ (void) gss_release_name(&minor_stat, &context->internal_name);
+
if (context->optionStr != NULL) {
free(context->optionStr);
context->optionStr = NULL;