diff options
author | Daniel Stenberg <daniel@haxx.se> | 2009-08-01 11:02:10 +0000 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2009-08-01 11:02:10 +0000 |
commit | 2642638fcae2c51a3407f0af6a90b3c6aca895f5 (patch) | |
tree | 7ce16cacd7867adee4817ce984a5c046cb5c066b /lib | |
parent | 8b0fc9819f656daaa035d8e74213282e2cbffdec (diff) | |
download | curl-2642638fcae2c51a3407f0af6a90b3c6aca895f5.tar.gz |
- Alexander Beedie provided the patch for a noproxy problem: If I have set
CURLOPT_NOPROXY to "*", or to a host that should not use a proxy, I actually
could still end up using a proxy if a proxy environment variable was set.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/url.c | 11 |
1 files changed, 7 insertions, 4 deletions
@@ -4419,14 +4419,17 @@ static CURLcode create_conn(struct SessionHandle *data, } } - if(!proxy) - proxy = detect_proxy(conn); - else if(data->set.str[STRING_NOPROXY]) { - if(check_noproxy(conn->host.name, data->set.str[STRING_NOPROXY])) { + + if(data->set.str[STRING_NOPROXY] && + check_noproxy(conn->host.name, data->set.str[STRING_NOPROXY])) { + if(proxy) { free(proxy); /* proxy is in exception list */ proxy = NULL; } } + else if(!proxy) + proxy = detect_proxy(conn); + if(proxy && !*proxy) { free(proxy); /* Don't bother with an empty proxy string */ proxy = NULL; |