From 23d52ca4a7be5e3c942dc001e95cff6ba905f1a1 Mon Sep 17 00:00:00 2001 From: Steve Holme Date: Sun, 17 Aug 2014 22:58:48 +0100 Subject: [PATCH] sasl_sspi: Fixed a memory leak with the GSSAPI base-64 decoded challenge --- lib/curl_sasl_sspi.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/curl_sasl_sspi.c b/lib/curl_sasl_sspi.c index 422b2f64c1d432..df4da96456d901 100644 --- a/lib/curl_sasl_sspi.c +++ b/lib/curl_sasl_sspi.c @@ -416,8 +416,11 @@ CURLcode Curl_sasl_create_gssapi_user_message(struct SessionHandle *data, &resp_desc, &attrs, &tsDummy); - if(status != SEC_E_OK && status != SEC_I_CONTINUE_NEEDED) + if(status != SEC_E_OK && status != SEC_I_CONTINUE_NEEDED) { + Curl_safefree(chlg); + return CURLE_RECV_ERROR; + } if(memcmp(&context, krb5->context, sizeof(context))) { s_pSecFn->DeleteSecurityContext(krb5->context); @@ -431,6 +434,9 @@ CURLcode Curl_sasl_create_gssapi_user_message(struct SessionHandle *data, resp_buf.cbBuffer, outptr, outlen); } + /* Free the decoded challenge */ + Curl_safefree(chlg); + return result; }