http: always use any proxy auth method available

We set CURLOPT_PROXYAUTH to use the most secure authentication method available only when the user has set configuration variables to specify a proxy. However, libcurl also supports specifying a proxy through environment variables. In that case libcurl defaults to only using the Basic proxy authentication method, because we do not use CURLOPT_PROXYAUTH. Set CURLOPT_PROXYAUTH to always use the most secure authentication method available, even when there is no git configuration telling us to use a proxy. This allows the user to use environment variables to configure a proxy that requires an authentication method different from Basic. Signed-off-by: Enrique A. Tobis <etobis@twosigma.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Enrique Tobis committed Jun 26, 2015 at 18:19 UTC 5841520b034ab08f132f7d066a19163a9e3d4c07
1 file changed +2 -2
http.c
+2 -2
@@ -406,10 +406,10 @@ static CURL *get_curl_handle(void)
406
407 if (curl_http_proxy) {
408 curl_easy_setopt(result, CURLOPT_PROXY, curl_http_proxy);
409 + }
410 #if LIBCURL_VERSION_NUM >= 0x070a07
410 - curl_easy_setopt(result, CURLOPT_PROXYAUTH, CURLAUTH_ANY);
411 + curl_easy_setopt(result, CURLOPT_PROXYAUTH, CURLAUTH_ANY);
412 #endif
412 - }
413
414 set_curl_keepalive(result);
415