diff options
author | Even Rouault <even.rouault@spatialys.com> | 2018-07-25 11:22:51 +0200 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2018-07-26 16:20:15 +0200 |
commit | a7091ba75d820612ec260da805e9148397eddfcd (patch) | |
tree | 61346f423f5e2139cc41460348977f48b7777d17 /lib | |
parent | d0d48b42763ec8649196fbf7648ad9de0127dc27 (diff) | |
download | curl-a7091ba75d820612ec260da805e9148397eddfcd.tar.gz |
reuse_conn(): free old_conn->options
This fixes a memory leak when CURLOPT_LOGIN_OPTIONS is used, together with
connection reuse.
I found this with oss-fuzz on GDAL and curl master:
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=9582
I couldn't reproduce with the oss-fuzz original test case, but looking
at curl source code pointed to this well reproducable leak.
Closes #2790
Diffstat (limited to 'lib')
-rw-r--r-- | lib/url.c | 1 |
1 files changed, 1 insertions, 0 deletions
@@ -3971,6 +3971,7 @@ static void reuse_conn(struct connectdata *old_conn, Curl_safefree(old_conn->user); Curl_safefree(old_conn->passwd); + Curl_safefree(old_conn->options); Curl_safefree(old_conn->http_proxy.user); Curl_safefree(old_conn->socks_proxy.user); Curl_safefree(old_conn->http_proxy.passwd); |