]> ruderich.org/simon Gitweb - tlsproxy/tlsproxy.git/blobdiff - tests/tests-passthrough.sh
tests: Test that hostnames must be matched exactly.
[tlsproxy/tlsproxy.git] / tests / tests-passthrough.sh
index 4b4e3b252262132a21e426d3cf53fb6f8fbad062..39f3d01f0165612567ac8807b2208770b7331019 100755 (executable)
@@ -24,13 +24,13 @@ test "x$srcdir" = x && srcdir=.
 
 # Create necessary files.
 cleanup
-"$srcdir/../src/tlsproxy-setup" >/dev/null 2>/dev/null
+tlsproxy_setup
 
 # Normal tests.
-tlsproxy -u 4711
-server --x509certfile "$srcdir/server.pem" \
-       --x509keyfile "$srcdir/server-key.pem"
-sleep 1
+tlsproxy_background -u 4711
+server_background --x509certfile "$srcdir/server.pem" \
+                  --x509keyfile "$srcdir/server-key.pem"
+wait_for_ports 4711 4712
 
 
 echo invalid hostname
@@ -44,8 +44,7 @@ test_proxy_successful
 test_invalid_certificate
 
 # Create the proxy certificate.
-"$srcdir/../src/tlsproxy-add" localhost "$srcdir/server.pem" \
-    >/dev/null 2>/dev/null
+tlsproxy_add localhost server.pem
 
 echo missing server certificate
 mv certificate-localhost-server.pem .pem
@@ -55,11 +54,11 @@ test_proxy_successful
 test_invalid_certificate
 
 echo missing proxy certificate
-mv certificate-localhost-proxy.pem .pem
+mv certificate-localhost-proxy.pem certificate-www.localhost-proxy.pem
 # "invalid" to prevent user error if the proxy certificate gets deleted (but
 # the server certificate is still readable).
 client localhost 4712 invalid || abort 'client localhost 4712 invalid'
-mv .pem certificate-localhost-proxy.pem
+mv certificate-www.localhost-proxy.pem certificate-localhost-proxy.pem
 test_proxy_successful
 test_invalid_certificate
 
@@ -73,9 +72,10 @@ test_no_invalid_certificate
 # Stop server and try a "MITM" with a bad certificate.
 echo
 kill $pid_server || echo 'failed to kill gnutls-serv'
-server --x509certfile "$srcdir/server-bad.pem" \
-       --x509keyfile "$srcdir/server-key.pem"
-sleep 1
+sleep 3 # necessary on some systems like OpenBSD
+server_background --x509certfile "$srcdir/server-bad.pem" \
+                  --x509keyfile "$srcdir/server-key.pem"
+wait_for_ports 4712
 rm -f certificate-localhost-proxy.pem certificate-localhost-server.pem
 
 
@@ -90,22 +90,21 @@ test_proxy_successful
 test_invalid_certificate
 
 # Create the proxy certificate.
-"$srcdir/../src/tlsproxy-add" localhost "$srcdir/server.pem" \
-    >/dev/null 2>/dev/null
+tlsproxy_add localhost server.pem
 
 echo mitm missing server certificate
-mv certificate-localhost-server.pem .pem
+mv certificate-localhost-server.pem certificate-www.localhost-server.pem
 client localhost 4712 'test server bad' || abort 'client localhost 4712 test server bad'
-mv .pem certificate-localhost-server.pem
+mv certificate-www.localhost-server.pem certificate-localhost-server.pem
 test_proxy_successful
 test_invalid_certificate
 
 echo mitm missing proxy certificate
-mv certificate-localhost-proxy.pem .pem
+mv certificate-localhost-proxy.pem certificate-www.localhost-proxy.pem
 # "invalid" to prevent user error if the proxy certificate gets deleted (but
 # the server certificate is still readable).
 client localhost 4712 invalid || abort 'client localhost 4712 invalid'
-mv .pem certificate-localhost-proxy.pem
+mv certificate-www.localhost-proxy.pem certificate-localhost-proxy.pem
 test_proxy_successful
 test_invalid_certificate
 
@@ -115,7 +114,7 @@ test_proxy_successful
 test_invalid_certificate
 
 
-stop_servers
+# stop_servers in trap-handler
 cleanup
 
 exit 0