]> granicus.if.org Git - curl/commitdiff
ntlm_wb: Fix theoretical memory leak
authorDavid Woodhouse <David.Woodhouse@intel.com>
Thu, 16 Jul 2015 18:17:33 +0000 (14:17 -0400)
committerJay Satiro <raysatiro@yahoo.com>
Thu, 16 Jul 2015 18:22:45 +0000 (14:22 -0400)
Static analysis indicated that my commit 9008f3d564 ("ntlm_wb: Fix
hard-coded limit on NTLM auth packet size") introduced a potential
memory leak on an error path, because we forget to free the buffer
before returning an error.

Fix this.

Although actually, it never happens in practice because we never *get*
here with state == NTLMSTATE_TYPE1. The state is always zero. That
might want cleaning up in a separate patch.

Reported-by: Terri Oda
lib/curl_ntlm_wb.c

index d63fb277b69937f047f36d9e9b5743e1994cab20..b2a5fb3438519e3e3451d105bde78b3949b4e324 100644 (file)
@@ -306,7 +306,7 @@ static CURLcode ntlm_wb_response(struct connectdata *conn,
   if(state == NTLMSTATE_TYPE1 &&
      len_out == 3 &&
      buf[0] == 'P' && buf[1] == 'W')
-    return CURLE_REMOTE_ACCESS_DENIED;
+    goto done;
   /* invalid response */
   if(len_out < 4)
     goto done;