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

Re: [RFC PATCH v2 3/8] Support taking over transports

From
Shawn O. Pearce <spearce@spearce.org>
Date
Dec 4, 2009, 18:27 UTC
Message-ID
<20091204182753.GD1483@spearce.org>
In-Reply-To
<1259942168-24869-6-git-send-email-ilari.liusvaara@elisanet.fi>
Ilari Liusvaara <ilari.liusvaara@elisanet.fi> wrote:
> Add support for taking over transports that turn out to be smart.
I really don't like this disown strategy and its magic ref return
value from fetch.
 
Show 10 quoted lines
> @@ -1020,7 +1089,13 @@ int transport_fetch_refs(struct transport *transport, struct ref *refs)
>  			heads[nr_heads++] = rm;
>  	}
>  
> +retry:
>  	rc = transport->fetch(transport, nr_heads, heads);
> +	if(rc == TRANSPORT_LAYER6_READY) {
> +		git_take_over_transport(transport);
> +		goto retry;
> +	}

Why can't you expose git_take_over_transport as a public function and then the transport-helper.c code can instead do:

	... setup connect with helper ...
	transport_takeover(transport, child);
	return transport->fetch(....);
Would this make the code simpler?
-- 
Shawn.
Previous: Ilari LiusvaaraNext: Ilari Liusvaara
Message 10 of 20 in “Remote helpers smart transport extensions”
  1. 0/8 Remote helpers smart transport extensionsIlari Liusvaara, Dec 4, 2009
  2. 0/8 Remote helpers smart transport extensionsIlari Liusvaara, Dec 4, 2009
  3. 0/8 Remote helpers smart transport extensionsIlari Liusvaara, Dec 4, 2009
  4. 1/8 Pass unknown protocols to external protocol handlersIlari Liusvaara, Dec 4, 2009
  5. Sverre RabbelierDec 4, 2009
  6. Shawn O. PearceDec 4, 2009
  7. Ilari LiusvaaraDec 5, 2009
  8. 2/8 Refactor git transport options parsingIlari Liusvaara, Dec 4, 2009
  9. 3/8 Support taking over transportsIlari Liusvaara, Dec 4, 2009
  10. Shawn O. PearceDec 4, 2009
  11. Ilari LiusvaaraDec 5, 2009
  12. 4/8 Support remote helpers implementing smart transportsIlari Liusvaara, Dec 4, 2009
  13. Shawn O. PearceDec 4, 2009
  14. Ilari LiusvaaraDec 5, 2009
  15. 5/8 Support remote archive from external protocol helpersIlari Liusvaara, Dec 4, 2009
  16. 6/8 Remove special casing of http, https and ftpIlari Liusvaara, Dec 4, 2009
  17. Sverre RabbelierDec 4, 2009
  18. 7/8 Add remote helper debug modeIlari Liusvaara, Dec 4, 2009
  19. Sverre RabbelierDec 4, 2009
  20. 8/8 Support mandatory capabilitiesIlari Liusvaara, Dec 4, 2009

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.