git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Bug: git behind proxy is broken in 2.34.1

From
Jeff King <peff@peff.net>
Date
Feb 16, 2023, 20:46 UTC
Message-ID
<Y+6WOF+OHX4u94Z2@coredump.intra.peff.net>
In-Reply-To
<c0862f86061c220af289ce812d57f9c7.squirrel@www.entrap.de>
On Thu, Feb 16, 2023 at 06:55:42PM +0100, tm-uzr3z@entrap.de wrote:
Show 11 quoted lines
> I just realized that git cloning behind a webproxy is broken in version
> 2.34.1 (Ubuntu 22.04).
> 
> The environment bash variables http_proxy, https_proxy, HTTP_PROXY and
> HTTPS_PROXY are all set with the value
> "http://myusername:mypassword@ourwebproxy:3128/".
> 
> git gives me the following error message on cloning:
> $git clone https://github.com/XXXX/YYYY
> fatal: unable to access 'https://github.com/XXXX/YYYY/': Received HTTP
> code 407 from proxy after CONNECT

Hmm. We do not have any test coverage for proxies at all. I took a stab at adding some, and it was not too bad. But...it works!

However, I think there may be a number of possible configurations here. In my tests, it is an http proxy over http, so it is issuing a GET with a full URL in it, rather than using CONNECT.

So it may be that CONNECT is broken, but http-over-http proxying is not. I couldn't get a working CONNECT set up at all (before even worrying about the authentication step).

> On another very old machine with git 1.9.1 it requests the URL through the
> proxy, receives an http 407 authentication required, and repeats the
> request with credentials, which is allowed then.

That could be good news, as that would mean we might be able to bisect between 1.9.1 and 2.34.1. However, since you said it was an older machine, presumably other packages are old, too. I would not be surprised if the difference is actually in libcurl, not Git.

Still, if you're able to build Git from source and bisect, that would be worth trying.

-Peff
Previous: tm-uzr3z@entrap.deNext: Jeff King
Message 2 of 5 in “Bug: git behind proxy is broken in 2.34.1”
  1. tm-uzr3z@entrap.deFeb 16, 2023
  2. Jeff KingFeb 16, 2023
  3. add basic http proxy testsJeff King, Feb 16, 2023
  4. Junio C HamanoFeb 17, 2023
  5. Jeff KingFeb 17, 2023

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.