|
@@ -1,38 +0,0 @@
|
|
|
-#!/bin/bash
|
|
|
-
|
|
|
-print_usage() {
|
|
|
-cat >&2 <<USAGE
|
|
|
-Usage: $0 vmname
|
|
|
-Connects to another VM console using the admin.vm.Console RPC service.
|
|
|
-USAGE
|
|
|
-}
|
|
|
-
|
|
|
-if [ $# -lt 1 ] ; then
|
|
|
- print_usage
|
|
|
- exit 1
|
|
|
-fi
|
|
|
-
|
|
|
-QREXEC_REQUESTED_TARGET="$1"
|
|
|
-
|
|
|
-qrexec_console() {
|
|
|
- QREXEC_REQUESTED_TARGET="$1"
|
|
|
-
|
|
|
- qrexec-client-vm "$QREXEC_REQUESTED_TARGET" admin.vm.Console
|
|
|
-
|
|
|
- # exit code 200 is flock exit code in admin.vm.Console
|
|
|
- exit_code=$?
|
|
|
- if [ $exit_code -gt 0 ]; then
|
|
|
- if [ $exit_code -ne 200 ]; then
|
|
|
- printf "Cannot connect to %s" "$QREXEC_REQUESTED_TARGET"
|
|
|
- else
|
|
|
- printf "A qube is already connected to %s" "$QREXEC_REQUESTED_TARGET"
|
|
|
- fi
|
|
|
- exit 1
|
|
|
- fi
|
|
|
-}
|
|
|
-
|
|
|
-export -f qrexec_console
|
|
|
-
|
|
|
-printf "Use '^]' to exit remote console\n"
|
|
|
-socat file:/dev/tty,rawer,escape=0x1d EXEC:"/bin/bash -c \'qrexec_console $QREXEC_REQUESTED_TARGET 2>/dev/null\'"
|
|
|
-printf '\n'
|