summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHenry Vindin <henry@hcv.ind.in>2018-07-01 15:32:46 +1000
committerHenry Vindin <henry@hcv.ind.in>2018-07-01 15:37:34 +1000
commit9700e3592bc6d645146e75614670717a6d46400d (patch)
treeefa9bb4be235abfeb5dc5cfebb5f10bd4e2fdd3f
parentf90c2a6d4b89e8586949e2dc0fc0d530427567a0 (diff)
downloadnovnc-9700e3592bc6d645146e75614670717a6d46400d.tar.gz
Fixes #1075
Rather than trying to pick a utility, we should be able to just use bash to check if a port is available or not. We can probably assume bash is available due to the shebang declaring it.
-rwxr-xr-xutils/launch.sh13
1 files changed, 8 insertions, 5 deletions
diff --git a/utils/launch.sh b/utils/launch.sh
index 9e650e4..2007c85 100755
--- a/utils/launch.sh
+++ b/utils/launch.sh
@@ -70,11 +70,14 @@ while [ "$*" ]; do
done
# Sanity checks
-which netstat >/dev/null 2>&1 \
- || die "Must have netstat installed"
-
-netstat -ltn | grep -qs ":${PORT} .*LISTEN" \
- && die "Port ${PORT} in use. Try --listen PORT"
+if bash -c "exec 7<>/dev/tcp/localhost/${PORT}" &> /dev/null; then
+ exec 7<&-
+ exec 7>&-
+ die "Port ${PORT} in use. Try --listen PORT"
+else
+ exec 7<&-
+ exec 7>&-
+fi
trap "cleanup" TERM QUIT INT EXIT