Thu, 23 Mar 2023 12:14:53 +0000
client: Fix timeout handling
Previously, the timeout handler would fire an error that would get caught and
logged by the timer code. However that error never reached the upper levels of
scansion, leading to the whole thing just hanging.
Now we just trigger resumption of the async runner, and throw the error from
there if we haven't received the stanza yet.
With this change, timeouts are now correctly handled and reported as failures.
#!/bin/sh SQUISH=./buildscripts/squish PREFIX="/usr/local" # Help show_help() { cat <<EOF Configure Prosody prior to building. --help This help. --prefix Installation path prefix (used when installing) Default: $PREFIX --squish Path to squish utility (used for building) Default: $SQUISH EOF } while [ "$1" ] do value="`echo $1 | sed 's/[^=]*=\(.*\)/\1/'`" if echo "$value" | grep -q "~" then echo echo '*WARNING*: the "~" sign is not expanded in flags.' echo 'If you mean the home directory, use $HOME instead.' echo fi case "$1" in --help) show_help exit 0 ;; --with-squish=*) SQUISH="$value" ;; --prefix=*) PREFIX="$value" ;; *) echo "Error: Unknown flag: $1" exit 1 ;; esac shift done # Sanity-check options if ! test -x "$SQUISH"; then echo "FATAL: Unable to find/use squish: $SQUISH"; exit 1; fi cat <<EOF >config.unix # This file was automatically generated by the configure script. # Run "./configure --help" for details. SQUISH=./buildscripts/squish PREFIX=$PREFIX EOF echo echo "Installing scansion to: $PREFIX/bin" echo echo "Configured successfully. Please run 'make' to proceed."