http: support CURLPROXY_HTTPS
authorWei Shuyu <wsy@dogben.com>
Tue, 19 Dec 2017 17:24:01 +0000 (01:24 +0800)
committerJunio C Hamano <gitster@pobox.com>
Tue, 19 Dec 2017 18:20:14 +0000 (10:20 -0800)
HTTP proxy over SSL is supported by curl since 7.52.0.
This is very useful for networks with protocol whitelist.

Signed-off-by: Wei Shuyu <wsy@dogben.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
http.c
diff --git a/http.c b/http.c
index 713525f38ed3f254aed2b0dd65fece7972444072..9f98b56f221697a8613c2bd55a347ef92a173a05 100644 (file)
--- a/http.c
+++ b/http.c
@@ -864,6 +864,11 @@ static CURL *get_curl_handle(void)
                else if (starts_with(curl_http_proxy, "socks"))
                        curl_easy_setopt(result,
                                CURLOPT_PROXYTYPE, CURLPROXY_SOCKS4);
+#endif
+#if LIBCURL_VERSION_NUM >= 0x073400
+               else if (starts_with(curl_http_proxy, "https"))
+                       curl_easy_setopt(result,
+                               CURLOPT_PROXYTYPE, CURLPROXY_HTTPS);
 #endif
                if (strstr(curl_http_proxy, "://"))
                        credential_from_url(&proxy_auth, curl_http_proxy);