Re: FW: git via http protocol _and_ a proxy using NTLM authentication -- git 1.5.4.2 & curl 7.18.0
From: Mike Hommey <hidden>
Date: 2016-06-15 22:44:17
On Tue, Feb 26, 2008 at 05:46:21PM -0600, Ken.Fuchs@bench.com wrote:
quoted hunk ↗ jump to hunk
quoted
Well, the CURLOPT_PROXY is set in transport.c as well which your patch didn't address.Thanks, I just did a similar patch to transport.c: $ diff -u ../git-1.5.4.2/transport.c.orig \ ../git-1.5.4.2/transport.c@@ -456,7 +456,8 @@ if (transport->remote->http_proxy) curl_easy_setopt(slot->curl, CURLOPT_PROXY, transport->remote->http_proxy); - + curl_easy_setopt(slot->curl, CURLOPT_PROXYAUTH,(long)CURLAUTH_NTLM); + curl_easy_setopt(slot->curl, CURLOPT_PROXYUSERPWD, "<user-id>:<password>"); if (start_active_slot(slot)) { run_active_slot(slot); if (results.curl_result != CURLE_OK) { $
Starting with curl 7.14.1, you're supposed to be able to use the http://user:pass@proxy/ syntax, though I'm not sure it deals well with NTLM domains. You can probably leave CURLOPT_PROXYUSERPWD out if you set your proxy url correctly. As for CURLOPT_PROXYAUTH, it would be better to set it from another config. Note that remote.<name>.proxy config doesn't work as expected, you should use http.proxy which just work (and the change in transport.c is useless, then). I have, as part of by http-refactoring topic, a patch for remote.<name>.proxy to work better, though it doesn't support changing the proxy authentication method.
quoted
If that's the case, I figure the verbose output should've shown some auth failures with the proxy?No, actually the last 2 lines of debug output (unchanged) is: * Connection #0 to host <proxy domain> left intact fatal: Couldn't find remote ref HEAD So, the proxy communication via NTLM authentication seems to be working. The patch to transport.c did not change anything as far as I can see. The fatal error is from remote.c. Perhaps, it also requires some changes.
Does your remote have a HEAD ref ? Mike