From 38164838b976c25574355d577e4f6f154fd5b2b4 Mon Sep 17 00:00:00 2001 From: Florian Bezdeka Date: Wed, 1 Feb 2023 15:04:05 +0100 Subject: [PATCH] oe-git-proxy: Enable oe-git-proxy for git >= 2.32 Modern git versions (>= 2.32) have a optimization enabled where the socket communication is moved into half-duplex mode once the client has sent all necessary data and is waiting for RX. git is simply closing the TX part of the socket. There are proxy implementations out there that will shutdown the complete communication once the partial shutdown was received - breaking the git:// protocol. Using socat with the ignoreeof option fixes this issue. Closing one of stdin/stdout will not trigger a partial shutdown of the underlying socket. ignoreeof is a stone old feature. It will not break in combination with older git versions - where the partial shutdown will not be triggerend anyhow. Link: https://lore.kernel.org/git/4831bbeb0ec29ec84f92e0badfc0d628ecc6921d.camel@siemens.com/ (From OE-Core rev: 1d9ff73c92d8872611e07cadd120924fca794aa3) Signed-off-by: Florian Bezdeka Signed-off-by: Alexandre Belloni --- scripts/oe-git-proxy | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/oe-git-proxy b/scripts/oe-git-proxy index aa9b9dc9a94..80a7a030a7f 100755 --- a/scripts/oe-git-proxy +++ b/scripts/oe-git-proxy @@ -184,4 +184,4 @@ else METHOD="PROXY:$PROXY:$1:$2,proxyport=${PORT}${PROXYAUTH}" fi -exec $SOCAT STDIO "$METHOD" +exec $SOCAT STDIO,ignoreeof "$METHOD"