X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=tests%2Fcommon.sh;h=74165f658b1ece7b32056e6de6bb3a3c2783cde4;hb=7eba49d24d56288d83746f3f0ce383d7c0c36552;hp=c41c32dd0f9b1d2901c1a522d618fb7d7ee9ce30;hpb=a84000d1d2806c296bfc0fa4b505b5d5ef750715;p=tlsproxy%2Ftlsproxy.git diff --git a/tests/common.sh b/tests/common.sh index c41c32d..74165f6 100644 --- a/tests/common.sh +++ b/tests/common.sh @@ -1,6 +1,6 @@ # Functions used by all tests. # -# Copyright (C) 2011-2013 Simon Ruderich +# Copyright (C) 2011-2014 Simon Ruderich # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -27,9 +27,8 @@ trap 'abort SIGINT' INT cleanup() { rm -f \ - tmp tlsproxy-log \ - certificate-localhost-proxy.pem certificate-localhost-server.pem \ - proxy-ca-key.pem proxy-ca.pem proxy-invalid.pem proxy-key.pem + tmp tlsproxy-log gnutls-serv-log \ + certificate-localhost-proxy.pem certificate-localhost-server.pem } stop_servers() { if test -n "$pid_server"; then @@ -45,6 +44,17 @@ abort() { exit 1 } tlsproxy_setup() { + # Don't waste time running `tlsproxy-setup` when all files are still + # present. + if test -f proxy-ca-key.pem && + test -f proxy-ca.pem && + test -f proxy-dh.pem && + test -f proxy-invalid.pem && + test -f proxy-key.pem + then + return + fi + "$srcdir/../src/tlsproxy-setup" >/dev/null 2>&1 } tlsproxy_add() { @@ -52,22 +62,23 @@ tlsproxy_add() { # over when using `cp`. This causes a check failure when tlsproxy_add() is # called again with the same hostname. Instead use redirection which # doesn't use `cp`. - "$srcdir/../src/tlsproxy-add" "$1" < "$srcdir/$2" >/dev/null 2>&1 + "$srcdir/../src/tlsproxy-add" "$1" <"$srcdir/$2" >/dev/null 2>&1 } -tlsproxy() { - ../src/tlsproxy -d2 "$@" >tlsproxy-log 2>&1 & +tlsproxy_background() { + #valgrind --leak-check=full --error-exitcode=1 --track-fds=yes \ + ../src/tlsproxy -d3 "$@" >tlsproxy-log 2>&1 & pid_tlsproxy=$! } -server() { - gnutls-serv --http --port 4712 "$@" >/dev/null 2>&1 & +server_background() { + gnutls-serv --http --port 4712 --debug 10 "$@" >gnutls-serv-log 2>&1 & pid_server=$! } client() { - ./client ./proxy-ca.pem "$@" > tmp 2>&1 + ./client ./proxy-ca.pem "$@" >tmp 2>&1 } wait_for_ports() { - while :; do + for x in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20; do sleep 1 # Check if each given port can be reached.