From 292686c3ca64d174257b3fa698b89c7e0d3b54e7 Mon Sep 17 00:00:00 2001 From: Martin Wimpress Date: Thu, 19 Mar 2020 17:28:13 +0000 Subject: [PATCH] Add get_port() function Find a free port from an available range. --- quickemu.sh | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/quickemu.sh b/quickemu.sh index 137d09e..d8aa995 100755 --- a/quickemu.sh +++ b/quickemu.sh @@ -29,6 +29,19 @@ function vm_snapshot() { exit 0 } +function get_port() { + local PORT_START=22220 + local PORT_RANGE=9 + while true; do + local CANDIDATE=$[${PORT_START} + (${RANDOM} % ${PORT_RANGE})] + (echo "" >/dev/tcp/127.0.0.1/${CANDIDATE}) >/dev/null 2>&1 + if [ $? -ne 0 ]; then + echo "${CANDIDATE}" + break + fi + done +} + function vm_boot() { local VMNAME=$(basename ${VM} .conf) local BIOS=""