threads / discuss / 1321

Using git with http behind proxy with authentification?

Subject: Using git with http behind proxy with authentification?

## tl;dr

2 messages between Jul 23, 2005 and Jul 25, 2005.

replies: 1people: 2as markdown or json

Dirk Behme· Jul 23, 2005, 10:21 UTC · lore
Hi,

because I'm sitting behind a firewall I have to use cogito/git using http. But http proxy needs special authentification with user & password. It seems to me that this isn't supported with recent cogito/git?

In the past, for bk I used
$ export http_proxy=http://user:password@someproxy.some.where:8080/
which worked. But no luck with cogito/git.

Looking into recent cogito/git, the reason for this seems to be that cogito/git uses a combination of wget in scripts and curl in compiled executables. Having a look to cg-pull script, this script uses wget. Then, it calls git-http-pull if it thinks that http should be used. Looking at http-pull.c shows that there curl is used for http access. If I understand it correctly from man pages, wget understands user:password syntax of http_proxy environment, but curl doesn't. As I understand it curl understands only 'someproxy.some.where:8080' and wants the user and password given as parameter of curl_easy_setopt. The curl_easy_setopt man page tells something about CURLOPT_PROXYUSERPWD parameter.

Any ideas?
Many thanks
Dirk
Darrin Thompson· Jul 25, 2005, 22:14 UTC · re: Dirk Behme · lore

Re: Using git with http behind proxy with authentification?

On Sat, 2005-07-23 at 12:21 +0200, Dirk Behme wrote:
Show 17 quoted lines
> In the past, for bk I used
> 
> $ export http_proxy=http://user:password@someproxy.some.where:8080/
> 
> which worked. But no luck with cogito/git.
> 
> Looking into recent cogito/git, the reason for this seems to be that 
> cogito/git uses a combination of wget in scripts and curl in compiled 
> executables. Having a look to cg-pull script, this script uses wget. 
> Then, it calls git-http-pull if it thinks that http should be used. 
> Looking at http-pull.c shows that there curl is used for http access. If 
> I understand it correctly from man pages, wget understands user:password 
> syntax of http_proxy environment, but curl doesn't. As I understand it 
> curl understands only 'someproxy.some.where:8080' and wants the user and 
> password given as parameter of curl_easy_setopt. The curl_easy_setopt 
> man page tells something about CURLOPT_PROXYUSERPWD parameter.
> 

For git itself everything is curl only now as far as I know. That's new as of hours after you sent this.

Git turns on .netrc for doing 401 http auth. I wonder if curl will consult .netrc for 407 proxy credentials as well?

Somebody would have to read code and/or try it.

-- Darrin

← back to recent threads