[29254] in CVS-changelog-for-Kerberos-V5

home help back first fref pref prev next nref lref last post

krb5 commit: Fix memory leak in SPNEGO gss_init_sec_context()

daemon@ATHENA.MIT.EDU (Greg Hudson)
Mon Jan 11 11:51:46 2016

Date: Mon, 11 Jan 2016 11:51:39 -0500
From: Greg Hudson <ghudson@mit.edu>
Message-Id: <201601111651.u0BGpdAq032646@drugstore.mit.edu>
To: cvs-krb5@mit.edu
Reply-To: krbdev@mit.edu
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: cvs-krb5-bounces@mit.edu

https://github.com/krb5/krb5/commit/159dbbd5ff14fdc2fa71fb3a8804eb401c914399
commit 159dbbd5ff14fdc2fa71fb3a8804eb401c914399
Author: Greg Hudson <ghudson@mit.edu>
Date:   Wed Nov 25 14:43:35 2015 -0500

    Fix memory leak in SPNEGO gss_init_sec_context()
    
    After the initial call to spnego_gss_init_sec_context(), the context
    handle can leak if init_ctx_cont() returns an error, because the
    cleanup handler assumes that spnego_ctx contains the value of
    *context_handle.  Fix this leak by setting spnego_ctx before the if
    block which contains that call.  Reported by Adam Bernstein.
    
    ticket: 8281 (new)
    target_version: 1.14.1
    tags: pullup

 src/lib/gssapi/spnego/spnego_mech.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/src/lib/gssapi/spnego/spnego_mech.c b/src/lib/gssapi/spnego/spnego_mech.c
index 5833994..c7de261 100644
--- a/src/lib/gssapi/spnego/spnego_mech.c
+++ b/src/lib/gssapi/spnego/spnego_mech.c
@@ -1032,7 +1032,8 @@ spnego_gss_init_sec_context(
 
 	/* Step 1: perform mechanism negotiation. */
 	spcred = (spnego_gss_cred_id_t)claimant_cred_handle;
-	if (*context_handle == GSS_C_NO_CONTEXT) {
+	spnego_ctx = (spnego_gss_ctx_id_t)*context_handle;
+	if (spnego_ctx == NULL) {
 		ret = init_ctx_new(minor_status, spcred,
 				   context_handle, &send_token);
 		if (ret != GSS_S_CONTINUE_NEEDED) {
_______________________________________________
cvs-krb5 mailing list
cvs-krb5@mit.edu
https://mailman.mit.edu/mailman/listinfo/cvs-krb5

home help back first fref pref prev next nref lref last post