From 46bca630bff7f30b69757e8f1d0945d447640590 Mon Sep 17 00:00:00 2001 From: Andrew Cady Date: Thu, 24 Feb 2022 10:52:18 -0500 Subject: avoid use of local TCP port -- use socket file instead --- dot/local/bin/xvnc | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/dot/local/bin/xvnc b/dot/local/bin/xvnc index 0a4f46c..ffae919 100755 --- a/dot/local/bin/xvnc +++ b/dot/local/bin/xvnc @@ -33,19 +33,13 @@ share_display() fi port=5500 - while fuser -vk $port/tcp - do - sleep 0.1 - done - x11vnc -noxrecord -q -nopw -ncache -ncache_cr -localhost -display "${local_display}" -rfbport "$port" & - X11VNC=$! - trap 'if [ ! "$DEBUG" ]; then exec 2>/dev/null; fi; set -- "$X11VNC" "$SSH"; ps hu "$@"; kill "$@"' EXIT + OUR_TMP=$(mktemp -d) || exit + socket_file=$OUR_TMP/x11vnc.socket - while ! fuser -v $port/tcp - do - [ -e /proc/"$X11VNC" ] || break - sleep 0.1 - done + # killall x11vnc + x11vnc -noxrecord -q -nopw -ncache -ncache_cr -display "${local_display}" -unixsock "$socket_file" & + X11VNC=$! + trap '[ "$DEBUG" ] || exec 2>/dev/null; set -- "$X11VNC" "$SSH"; ps hu "$@"; kill "$@"' EXIT # TODO: spin waiting for port 5500 ssh -n \ @@ -55,7 +49,7 @@ share_display() ssh -n \ -o ControlPath=none \ -o ExitOnForwardFailure=yes \ - -R "localhost:$port:localhost:$port" \ + -R "localhost:$port:$socket_file" \ ${remote_port:+ -p "$remote_port" } \ "$remote_host" \ "DISPLAY=${remote_display} xvncviewer localhost:$port" 2>&1 & -- cgit v1.2.3