Patchwork scripts/oe-git-proxy-socks-command: Add fallback to use nc

login
register
mail settings
Submitter Richard Purdie
Date March 1, 2012, 11:55 p.m.
Message ID <1330646126.15224.3.camel@ted>
Download mbox | patch
Permalink /patch/22563/
State Accepted
Commit aaab6ae94258277dcd2f29823a64689e6245fa7a
Headers show

Comments

Richard Purdie - March 1, 2012, 11:55 p.m.
If our own proxy command isn't available for some reason and nc is available,
fall back to use it.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---

Patch

diff --git a/scripts/oe-git-proxy-socks-command b/scripts/oe-git-proxy-socks-command
index 39e0acb..8acffb5 100755
--- a/scripts/oe-git-proxy-socks-command
+++ b/scripts/oe-git-proxy-socks-command
@@ -8,10 +8,16 @@  if [ -z "$PROXYSOCKS" -a -e "$SCRIPTDIR/oe-git-proxy-socks.c" ]; then
 fi
 PROXYSOCKS=`which oe-git-proxy-socks 2> /dev/null`
 if [ ! -x "$PROXYSOCKS" ]; then
-	# If that fails, explain to the user
-	echo "Unable to find oe-git-proxy-socks. This is usually created with the command"
-	echo "'gcc scripts/oe-git-proxy-socks.c -o scripts/oe-git-proxy-socks' which we tried"
-	echo "but it doesn't seem to have worked. Please compile the binary manually."
-	exit 1
+	# If that fails, we can see if netcat (nc) is available
+	NETCAT=`which nc 2> /dev/null`
+	if [ ! -x "$NETCAT" ]; then
+		# If that fails, explain to the user
+		echo "Unable to find oe-git-proxy-socks. This is usually created with the command"
+		echo "'gcc scripts/oe-git-proxy-socks.c -o scripts/oe-git-proxy-socks' which we tried"
+		echo "but it doesn't seem to have worked. Please compile the binary manually."
+		echo "Alternativly, install nc (netcat) on this machine."
+		exit 1
+	fi
+	exec $NETCAT -x $GIT_PROXY_HOST:$GIT_PROXY_PORT "$@"
 fi
 oe-git-proxy-socks -S $GIT_PROXY_HOST:$GIT_PROXY_PORT $@