summaryrefslogtreecommitdiffstats
path: root/x11vnc/misc/rx11vnc
diff options
context:
space:
mode:
Diffstat (limited to 'x11vnc/misc/rx11vnc')
-rwxr-xr-xx11vnc/misc/rx11vnc133
1 files changed, 0 insertions, 133 deletions
diff --git a/x11vnc/misc/rx11vnc b/x11vnc/misc/rx11vnc
deleted file mode 100755
index cf9c78b..0000000
--- a/x11vnc/misc/rx11vnc
+++ /dev/null
@@ -1,133 +0,0 @@
-#!/bin/sh
-#
-# usage: rx11vnc [-s] <host>:<xdisplay>
-# rx11vnc [-s] <host> (assumes xdisplay is 0)
-#
-# -s means use ssh instead of rsh.
-# -S tries to tunnel the vnc traffic thru ssh. (experimental...)
-#
-#set -xv
-
-#
-# Place your x11vnc cmd + options here (must have -bg and -display
-# with -display as the last one)
-#
-cmd="x11vnc -nap -q -bg -display"
-viewer="vncviewer"
-rsh=rsh
-
-#
-# The following two settings are only used under -S (ssh tunnel)
-#
-# Unfortunately, we have to set up the ssh port redirection *before*
-# x11vnc has started and selected its listening port.
-# tunnel_ports is a list of ports we expect/hope to be free on both
-# the local and remote machines:
-#
-tunnel_ports="5900 5901 5902 5903"
-#
-# VNC has a poor default in that if the client appears to be emanating
-# from the local machine, then raw encoding is preferred. With ssh port
-# redirection we appear to be coming from the localhost, but we are not.
-# We pass this encoding list to the viewer to give lowest preference to
-# raw encoding:
-#
-tunnel_encodings="copyrect tight zrle hextile zlib corre rre"
-
-if [ "$USER" = "runge" ]; then
- cmd="x11vnc.expt -nap -q -bg -rfbauth .vnc/passwd -display"
- viewer="vncviewerz"
-fi
-
-if [ "X$1" = "X-s" ]; then
- shift
- rsh=ssh
-elif [ "X$1" = "X-S" ]; then
- shift
- rsh=ssh
- tunnel=1
- cmd=`echo "$cmd" | sed -e 's/ / -localhost /'`
-fi
-
-remote=$1
-if echo "$remote" | grep ':' > /dev/null; then
- :
-else
- remote="$remote:0"
-fi
-
-host=`echo "$remote" | awk -F: '{print $1}'`
-disp=`echo "$remote" | awk -F: '{print $2}'`
-disp=":$disp"
-if [ "X$host" = "X" ]; then
- echo "bad host."
- exit 1
-fi
-
-# start the remote x11vnc:
-if [ $tunnel ]; then
- # much more kludgy for tunnelling:
- tmp=/tmp/rx11vnc.$$
- redir=""
- used_ports=`netstat -an | egrep '(ESTABLISHED|LISTEN) *$' \
- | sed -e 's/^[ ]*//' -e 's/^tcp[ 0-9][ 0-9]*//' \
- -e 's/[ ].*$//' -e 's/^.*[^0-9]//' | sort -nu`
- for p in $tunnel_ports
- do
- ok=1
- for u in $used_ports
- do
- if [ "X$p" = "X$u" ]; then
- echo "port $u is in use. skipping it"
- ok=
- break
- fi
- done
- if [ $ok ]; then
- redir="$redir -L $p:localhost:$p"
- fi
- done
- #
- # Have ssh put the command in the bg, then we look for PORT=
- # in the tmp file. The sleep at the end is to give us enough
- # time to connect thru the port redir, otherwise ssh will exit
- # before we can connect.
- #
- time=15
- $rsh -t -f $redir $host "$cmd $disp; echo END; sleep $time" > $tmp
-
- i=0
- while [ $i -lt $time ]
- do
- sleep 1
- if grep '^PORT=' $tmp > /dev/null; then
- port=`grep '^PORT=' $tmp | sed -e 's/PORT=//'`
- if [ "X$port" != "X" ]; then
- break
- fi
- fi
- i=`expr $i + 1`
- done
- cat $tmp
- rm -f $tmp
-else
- port=`$rsh $host "$cmd $disp" | grep '^PORT=' | sed -e 's/PORT=//'`
-fi
-
-echo "x11vnc port is '$port'"
-
-# now start up the viewer on this end:
-if echo "$port" | grep '^[0-9][0-9]*$' > /dev/null; then
- if [ $port -lt 6000 -a $port -ge 5900 ]; then
- # vncviewer special cases 0-99
- port=`expr $port - 5900`
- fi
- if [ $tunnel ]; then
- $viewer -encodings "$tunnel_encodings" "localhost:$port"
- else
- $viewer "$host:$port"
- fi
-else
- echo "bad port."
- exit 1
-fi