summaryrefslogtreecommitdiff
path: root/http.h
diff options
context:
space:
mode:
authorKnut Franke <k.franke@science-computing.de>2016-01-26 13:02:48 (GMT)
committerJunio C Hamano <gitster@pobox.com>2016-01-26 18:53:25 (GMT)
commit372370f1675c2b935fb703665358dd5567641107 (patch)
treeccd3d55be8f8d0be64f24cdb8f75a69da0f1e94c /http.h
parentef976395e26a25fb6d048d859a1c8cddb2640b9a (diff)
downloadgit-372370f1675c2b935fb703665358dd5567641107.zip
git-372370f1675c2b935fb703665358dd5567641107.tar.gz
git-372370f1675c2b935fb703665358dd5567641107.tar.bz2
http: use credential API to handle proxy authentication
Currently, the only way to pass proxy credentials to curl is by including them in the proxy URL. Usually, this means they will end up on disk unencrypted, one way or another (by inclusion in ~/.gitconfig, shell profile or history). Since proxy authentication often uses a domain user, credentials can be security sensitive; therefore, a safer way of passing credentials is desirable. If the configured proxy contains a username but not a password, query the credential API for one. Also, make sure we approve/reject proxy credentials properly. For consistency reasons, add parsing of http_proxy/https_proxy/all_proxy environment variables, which would otherwise be evaluated as a fallback by curl. Without this, we would have different semantics for git configuration and environment variables. Helped-by: Junio C Hamano <gitster@pobox.com> Helped-by: Eric Sunshine <sunshine@sunshineco.com> Helped-by: Elia Pinto <gitter.spiros@gmail.com> Signed-off-by: Knut Franke <k.franke@science-computing.de> Signed-off-by: Elia Pinto <gitter.spiros@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'http.h')
-rw-r--r--http.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/http.h b/http.h
index 4f97b60..f83cfa6 100644
--- a/http.h
+++ b/http.h
@@ -54,6 +54,7 @@ struct slot_results {
CURLcode curl_result;
long http_code;
long auth_avail;
+ long http_connectcode;
};
struct active_request_slot {