From e6823edde7c4a5c341bd5b26db24eac615989bbd Mon Sep 17 00:00:00 2001 From: Martin Wimpress Date: Fri, 3 Dec 2021 11:33:41 +0000 Subject: [PATCH] Make port scans non-blocking --- quickemu | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/quickemu b/quickemu index 7d38cb5..54b1e5e 100755 --- a/quickemu +++ b/quickemu @@ -136,8 +136,9 @@ function get_port() { local PORT_RANGE=$((PORT_START+$2)) local PORT for ((PORT = PORT_START; PORT <= PORT_RANGE; PORT++)); do - (echo -n "" >/dev/tcp/127.0.0.1/"${PORT}") >/dev/null 2>&1 - if [ ${?} -ne 0 ]; then + # Make sure port scans do not block too long. + timeout 0.1s bash -c "echo >/dev/tcp/127.0.0.1/${PORT}" >/dev/null 2>&1 + if [ ${?} -eq 1 ]; then echo "${PORT}" break fi