diff options
author | Henry Vindin <henry@hcv.ind.in> | 2018-07-01 15:32:46 +1000 |
---|---|---|
committer | Henry Vindin <henry@hcv.ind.in> | 2018-07-01 15:37:34 +1000 |
commit | 9700e3592bc6d645146e75614670717a6d46400d (patch) | |
tree | efa9bb4be235abfeb5dc5cfebb5f10bd4e2fdd3f | |
parent | f90c2a6d4b89e8586949e2dc0fc0d530427567a0 (diff) | |
download | novnc-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-x | utils/launch.sh | 13 |
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 |