core: fix socks5 proxy for curl downloads (closes #119)

This commit is contained in:
Sébastien Helleu 2014-07-05 22:22:16 +02:00
parent 4350dd058e
commit 7a7399594f
2 changed files with 13 additions and 9 deletions

View File

@ -15,6 +15,7 @@ http://weechat.org/files/releasenotes/ReleaseNotes-devel.html[release notes]
== Version 1.0 (under dev)
* core: fix socks5 proxy for curl downloads (closes #119)
* core: display curl error after a failed download
* core: do not display content of passphrase on /secure buffer
* core: add option "env" in command /set (manage environment variables)

View File

@ -1095,21 +1095,24 @@ weeurl_set_proxy (CURL *curl, struct t_proxy *proxy)
curl_easy_setopt (curl, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);
break;
case PROXY_TYPE_SOCKS4:
#if LIBCURL_VERSION_NUM >= 0x070A00
/* libcurl >= 7.10 */
curl_easy_setopt (curl, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS4);
#else
#if LIBCURL_VERSION_NUM < 0x070A00
/* proxy socks4 not supported in Curl < 7.10 */
return;
#endif
curl_easy_setopt (curl, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS4);
break;
case PROXY_TYPE_SOCKS5:
#if LIBCURL_VERSION_NUM >= 0x070A00
/* libcurl >= 7.10 */
curl_easy_setopt (curl, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5);
#else
/* proxy socks4 not supported in Curl < 7.10 */
#if LIBCURL_VERSION_NUM < 0x070A00
/* proxy socks5 not supported in Curl < 7.10 */
return;
#endif
#if LIBCURL_VERSION_NUM >= 0x071200
/* libcurl >= 7.18.0 */
curl_easy_setopt (curl, CURLOPT_PROXYTYPE,
CURLPROXY_SOCKS5_HOSTNAME);
#else
/* libcurl < 7.18.0 */
curl_easy_setopt (curl, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5);
#endif
break;
}