mirror of
https://github.com/OpenVPN/openvpn.git
synced 2024-11-23 01:34:06 +08:00
t_server_null: use wait instead of marker files
By using wait in a more inventive way we can avoid using a marker file to detect the "server could not be killed gracefully" situation. Change-Id: Ib385080e1dd1c3046c54e6267db8aa7d5c09e2fb Signed-off-by: Samuli Seppänen <samuli.seppanen@gmail.com> Acked-by: Gert Doering <gert@greenie.muc.de> Message-Id: <20241026092515.30559-1-gert@greenie.muc.de> URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg29664.html Signed-off-by: Gert Doering <gert@greenie.muc.de>
This commit is contained in:
parent
37db7fe37a
commit
5dd1b8b063
@ -62,6 +62,8 @@ export t_server_null_logdir=t_server_null-`hostname`-`date +%Y%m%d-%H%M%S`
|
||||
mkdir $t_server_null_logdir
|
||||
|
||||
"${srcdir}/t_server_null_server.sh" &
|
||||
T_SERVER_NULL_SERVER_PID=$!
|
||||
|
||||
"${srcdir}/t_server_null_client.sh"
|
||||
retval=$?
|
||||
|
||||
@ -69,11 +71,9 @@ retval=$?
|
||||
# that this script does not exit before all --dev null servers are dead and
|
||||
# their network interfaces are gone. Otherwise t_client.sh will fail because
|
||||
# pre and post ifconfig output does not match.
|
||||
wait
|
||||
wait $T_SERVER_NULL_SERVER_PID
|
||||
|
||||
. ./t_server_null_default.rc
|
||||
|
||||
if [ -e $SERVER_KILL_FAIL_FILE ]; then
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
else
|
||||
exit $retval
|
||||
|
@ -37,8 +37,9 @@ umask 022
|
||||
# Load local configuration, if any
|
||||
test -r ./t_server_null.rc && . ./t_server_null.rc
|
||||
|
||||
# Remove server kill failure marker file, if any
|
||||
rm -f $SERVER_KILL_FAIL_FILE
|
||||
# We can't exit immediately on the first failure as that could leave processes
|
||||
# lying around.
|
||||
retval=0
|
||||
|
||||
# Launch test servers
|
||||
for SUF in $TEST_SERVER_LIST
|
||||
@ -81,7 +82,6 @@ echo "All clients have disconnected from all servers"
|
||||
# Make sure that the server processes are truly dead before exiting. If a
|
||||
# server process does not exit in 15 seconds assume it never will, move on and
|
||||
# hope for the best.
|
||||
|
||||
echo "Waiting for servers to exit"
|
||||
for PID_FILE in $server_pid_files
|
||||
do
|
||||
@ -111,6 +111,8 @@ do
|
||||
echo "ERROR: had to send SIGKILL to server ${SERVER_NAME} with pid ${SERVER_PID}!"
|
||||
echo "Tail of server log:"
|
||||
tail -n 20 "${t_server_null_logdir}/${SERVER_NAME}.log"
|
||||
touch $SERVER_KILL_FAIL_FILE
|
||||
retval=1
|
||||
fi
|
||||
done
|
||||
|
||||
exit $retval
|
||||
|
Loading…
Reference in New Issue
Block a user