diff --git a/scripts/benchmark.test b/scripts/benchmark.test index 7762b54f54..5b6ed89e65 100755 --- a/scripts/benchmark.test +++ b/scripts/benchmark.test @@ -60,8 +60,10 @@ remove_ready_file() { do_cleanup() { echo "in cleanup" - if [ $server_pid != $no_pid ] + if [ $server_pid != $no_pid ] && kill -0 $server_pid then + # sleep to give sanitizers time to dump backtraces. + sleep 1 echo "killing server" kill -9 $server_pid fi diff --git a/scripts/crl-revoked.test b/scripts/crl-revoked.test index 95a8d1470e..119e651dd9 100755 --- a/scripts/crl-revoked.test +++ b/scripts/crl-revoked.test @@ -63,8 +63,10 @@ remove_ready_file() { abort_trap() { echo "script aborted" - if [ $server_pid != $no_pid ] + if [ $server_pid != $no_pid ] && kill -0 $server_pid then + # sleep to give sanitizers time to dump backtraces. + sleep 1 echo "killing server" kill -9 $server_pid fi diff --git a/scripts/dtls.test b/scripts/dtls.test index 1aa0f78c6d..d1a461b629 100755 --- a/scripts/dtls.test +++ b/scripts/dtls.test @@ -39,8 +39,12 @@ if [ "${AM_BWRAPPED-}" != "yes" ]; then fi kill_server() { + sleepseconds=1 for i in $(jobs -pr); do if [ "$i" != "$TCPDUMP_PID" ]; then + # sleep to give sanitizers time to dump backtraces. + sleep $sleepseconds + sleepseconds=0 kill -9 $i fi done diff --git a/scripts/openssl.test b/scripts/openssl.test index b41d4499af..ff4e01e61c 100755 --- a/scripts/openssl.test +++ b/scripts/openssl.test @@ -141,14 +141,21 @@ do_cleanup() { echo "in cleanup" IFS=$OIFS #restore separator + sleepseconds=1 for s in $servers do f2=${s%:*} sname=${f2%:*} pid=${f2##*:} port=${s##*:} - echo "killing server: $sname ($port)" - kill -9 "$pid" + if kill -0 "$pid" + then + # sleep to give sanitizers time to dump backtraces. + sleep $sleepseconds + sleepseconds=0 + echo "killing server: $sname ($port)" + kill -9 "$pid" + fi done } diff --git a/scripts/pkcallbacks.test b/scripts/pkcallbacks.test index 0a6fb2d7b5..a46dddea89 100755 --- a/scripts/pkcallbacks.test +++ b/scripts/pkcallbacks.test @@ -54,8 +54,10 @@ remove_ready_file() { do_cleanup() { echo "in cleanup" - if [ $server_pid != $no_pid ] + if [ $server_pid != $no_pid ] && kill -0 $server_pid then + # sleep to give sanitizers time to dump backtraces. + sleep 1 echo "killing server" kill -9 $server_pid fi @@ -67,8 +69,10 @@ do_cleanup() { abort_trap() { echo "script aborted" - if [ $server_pid != $no_pid ] + if [ $server_pid != $no_pid ] && kill -0 $server_pid then + # sleep to give sanitizers time to dump backtraces. + sleep 1 echo "killing server" kill -9 $server_pid fi diff --git a/scripts/psk.test b/scripts/psk.test index 10efe2ecfb..c6469e6c7a 100755 --- a/scripts/psk.test +++ b/scripts/psk.test @@ -63,8 +63,10 @@ remove_ready_file() { do_cleanup() { echo "in cleanup" - if [ $server_pid != $no_pid ] + if [ $server_pid != $no_pid ] && kill -0 $server_pid then + # sleep to give sanitizers time to dump backtraces. + sleep 1 echo "killing server" kill -9 $server_pid fi diff --git a/scripts/resume.test b/scripts/resume.test index 06f25be003..07488f10b8 100755 --- a/scripts/resume.test +++ b/scripts/resume.test @@ -44,8 +44,10 @@ remove_ready_file() { do_cleanup() { echo "in cleanup" - if [ $server_pid != $no_pid ] + if [ $server_pid != $no_pid ] && kill -0 $server_pid then + # sleep to give sanitizers time to dump backtraces. + sleep 1 echo "killing server" kill -9 $server_pid fi diff --git a/scripts/tls13.test b/scripts/tls13.test index 085ffc1806..e2ef3c9122 100755 --- a/scripts/tls13.test +++ b/scripts/tls13.test @@ -74,8 +74,10 @@ remove_ready_file() { do_cleanup() { echo "in cleanup" - if [ $server_pid != $no_pid ] + if [ $server_pid != $no_pid ] && kill -0 $server_pid then + # sleep to give sanitizers time to dump backtraces. + sleep 1 echo "killing server" kill -9 $server_pid 2>/dev/null server_pid=$no_pid diff --git a/scripts/trusted_peer.test b/scripts/trusted_peer.test index f616a5ee99..46d7342868 100755 --- a/scripts/trusted_peer.test +++ b/scripts/trusted_peer.test @@ -87,8 +87,10 @@ remove_ready_file() { do_cleanup() { echo "in cleanup" - if [ $server_pid != $no_pid ] + if [ $server_pid != $no_pid ] && kill -0 $server_pid then + # sleep to give sanitizers time to dump backtraces. + sleep 1 echo "killing server" kill -9 $server_pid fi