X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=tests%2Fcommon.sh;h=36dda8ed0dd77abba19eab35c611cd1bbd02c564;hb=3b4f4a15dc1ce69b65dc2c09d8743f7ed30662e4;hp=37c691beaf71bbb43480940b98dc58c9e17e1875;hpb=c31033a5fe1af1632a11c03de2290650ba8a82c6;p=tlsproxy%2Ftlsproxy.git diff --git a/tests/common.sh b/tests/common.sh index 37c691b..36dda8e 100644 --- a/tests/common.sh +++ b/tests/common.sh @@ -19,6 +19,12 @@ set -e +# Terminate all running servers when the script terminates. +trap 'stop_servers' 0 +# Same when the user presses Ctrl-C. +trap 'abort SIGINT' INT + + cleanup() { rm -f \ tmp tlsproxy-log \ @@ -26,8 +32,12 @@ cleanup() { proxy-ca-key.pem proxy-ca.pem proxy-invalid.pem proxy-key.pem } stop_servers() { - kill $pid_server || echo 'failed to kill gnutls-serv' - kill $pid_tlsproxy || echo 'failed to kill tlsproxy' + if test -n "$pid_server"; then + kill $pid_server || echo 'failed to kill gnutls-serv' + fi + if test -n "$pid_tlsproxy"; then + kill $pid_tlsproxy || echo 'failed to kill tlsproxy' + fi } abort() { echo "abort: $*"