diff options
author | Daniel Stenberg <daniel@haxx.se> | 2009-11-20 13:27:21 +0000 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2009-11-20 13:27:21 +0000 |
commit | a41493b3b0eaa83a907b4c3dbbab1297791ead97 (patch) | |
tree | 13cfa43e22427c97128ac43ab5aa987f07b15e53 | |
parent | 6da73d09f1744b9363c851854e71aaa175a9936c (diff) |
- Jad Chamcham pointed out a bug with connection re-use. If a connection had
CURLOPT_HTTPPROXYTUNNEL enabled over a proxy, a subsequent request using the
same proxy with the tunnel option disabled would still wrongly re-use that
previous connection and the outcome would only be badness.
-rw-r--r-- | CHANGES | 6 | ||||
-rw-r--r-- | RELEASE-NOTES | 3 | ||||
-rw-r--r-- | lib/url.c | 1 |
3 files changed, 9 insertions, 1 deletions
@@ -6,6 +6,12 @@ Changelog +Daniel Stenberg (20 Nov 2009) +- Jad Chamcham pointed out a bug with connection re-use. If a connection had + CURLOPT_HTTPPROXYTUNNEL enabled over a proxy, a subsequent request using the + same proxy with the tunnel option disabled would still wrongly re-use that + previous connection and the outcome would only be badness. + Daniel Stenberg (17 Nov 2009) - Constantine Sapuntzakis provided another fix for the DNS cache that could end up with entries that wouldn't time-out: diff --git a/RELEASE-NOTES b/RELEASE-NOTES index aa5be1d12..cae130cd3 100644 --- a/RELEASE-NOTES +++ b/RELEASE-NOTES @@ -23,6 +23,7 @@ This release includes the following bugfixes: o configure --with-nss is set but not "yes" o don't store LDFLAGS in pkg-config file o never-pruned DNS cached entries + o HTTP proxy tunnel re-used connection even if tunnel got disabled This release includes the following known bugs: @@ -33,6 +34,6 @@ advice from friends like these: Yang Tse, Kamil Dudka, Christian Schmitz, Constantine Sapuntzakis, Marco Maggi, Camille Moncelier, Claes Jakobsson, Kevin Baughman, - Marc Kleine-Budde + Marc Kleine-Budde, Jad Chamcham Thanks! (and sorry if I forgot to mention someone) @@ -2758,6 +2758,7 @@ ConnectionExists(struct SessionHandle *data, is the checked one using the same host, port and type? */ if(check->bits.proxy && (needle->proxytype == check->proxytype) && + (needle->bits.tunnel_proxy == check->bits.tunnel_proxy) && Curl_raw_equal(needle->proxy.name, check->proxy.name) && needle->port == check->port) { /* This is the same proxy connection, use it! */ |