[PATCH v3 2/4] http: try http_proxy env var when http.proxy config option is not set
From: Nelson Benitez Leon <hidden>
Date: 2016-06-15 22:53:13
Subsystem:
the rest · Maintainer:
Linus Torvalds
From: Nelson Benitez Leon <hidden>
Date: 2016-06-15 22:53:13
Subsystem:
the rest · Maintainer:
Linus Torvalds
cURL already reads it, but if $http_proxy has username but no password cURL will not ask you for the password and so failed to authenticate returning a 407 error code. So we read it ourselves to detect that and ask for the password. Also we read it prior to connection to be able to make a proactive authentication in case the flag http_proactive_auth is set. Signed-off-by: Nelson Benitez Leon <redacted> --- http.c | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/http.c b/http.c
index 8ac8eb6..8932da5 100644
--- a/http.c
+++ b/http.c@@ -295,6 +295,13 @@ static CURL *get_curl_handle(void) if (curl_ftp_no_epsv) curl_easy_setopt(result, CURLOPT_FTP_USE_EPSV, 0); + if (!curl_http_proxy) { + const char *env_proxy; + env_proxy = getenv("http_proxy"); + if (env_proxy) { + curl_http_proxy = xstrdup(env_proxy); + } + } if (curl_http_proxy) { curl_easy_setopt(result, CURLOPT_PROXY, curl_http_proxy); curl_easy_setopt(result, CURLOPT_PROXYAUTH, CURLAUTH_ANY);
--
1.7.7.6