diff options
author | Andrei Karas <akaras@inbox.ru> | 2017-09-18 02:20:13 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2017-09-18 02:20:13 +0300 |
commit | c55d293a56855842884f1f526834bf1884f36043 (patch) | |
tree | a20805bee7ddc7f396cb0fe9edd5ff999ea720dc /src/net | |
parent | 54e733a59cdcb8c0682587122a958e19669c87a3 (diff) | |
download | mv-c55d293a56855842884f1f526834bf1884f36043.tar.gz mv-c55d293a56855842884f1f526834bf1884f36043.tar.bz2 mv-c55d293a56855842884f1f526834bf1884f36043.tar.xz mv-c55d293a56855842884f1f526834bf1884f36043.zip |
Add option for enable http tunneling for downloads from http proxy.
Diffstat (limited to 'src/net')
-rw-r--r-- | src/net/download.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/net/download.cpp b/src/net/download.cpp index db001d1b5..8fd8bfd1e 100644 --- a/src/net/download.cpp +++ b/src/net/download.cpp @@ -511,6 +511,7 @@ void Download::addProxy(CURL *const curl) curl_easy_setopt(curl, CURLOPT_PROXY, config.getStringValue("downloadProxy").c_str()); } + switch (mode) { case 1: // direct connection @@ -518,11 +519,19 @@ void Download::addProxy(CURL *const curl) curl_easy_setopt(curl, CURLOPT_PROXY, ""); break; case 2: // HTTP +#if LIBCURL_VERSION_NUM >= 0x070300 + curl_easy_setopt(curl, CURLOPT_HTTPPROXYTUNNEL, + config.getIntValue("downloadProxyTunnel")); +#endif // LIBCURL_VERSION_NUM >= 0x070300 break; case 3: // HTTP 1.0 #if LIBCURL_VERSION_NUM >= 0x071304 curl_easy_setopt(curl, CURLOPT_PROXYTYPE, CURLPROXY_HTTP_1_0); #endif // LIBCURL_VERSION_NUM >= 0x071304 +#if LIBCURL_VERSION_NUM >= 0x070300 + curl_easy_setopt(curl, CURLOPT_HTTPPROXYTUNNEL, + config.getIntValue("downloadProxyTunnel")); +#endif // LIBCURL_VERSION_NUM >= 0x070300 break; case 4: // SOCKS4 #if LIBCURL_VERSION_NUM >= 0x070a00 |