forked from wolfSSL/wolfssl
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgoogle.test
executable file
·46 lines (37 loc) · 1.36 KB
/
google.test
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#!/usr/bin/env bash
# google.test
server=www.google.com
[ ! -x ./examples/client/client ] && echo -e "\n\nClient doesn't exist" && exit 1
# These tests do not run by default, we will call these opt in. There are
# additional default tests that require network connection, those are
# opt out.
# Not defining WOLFSSL_EXTERNAL_TEST runs only opt out.
# Defining WOLFSSL_EXTERNAL_TEST!=0 runs opt out and opt in.
# Defining WOLFSSL_EXTERNAL_TEST=0 does not run opt in or opt out.
if ! test -n "$WOLFSSL_EXTERNAL_TEST"; then
echo "WOLFSSL_EXTERNAL_TEST not set, won't run"
exit 77
fi
if test "$WOLFSSL_EXTERNAL_TEST" == "0"; then
echo "WOLFSSL_EXTERNAL_TEST is defined to zero, won't run"
exit 77
fi
if ! ./examples/client/client -V | grep -q 3; then
echo 'skipping google.test because TLS1.2 is not available.' 1>&2
exit 77
fi
# is our desired server there?
./scripts/ping.test $server 2
RESULT=$?
[ $RESULT -ne 0 ] && exit 0
# client test against the server
./examples/client/client -X -C -h $server -p 443 -g -d
RESULT=$?
[ $RESULT -ne 0 ] && echo -e "\n\nClient connection failed" && exit 1
if ./examples/client/client -V | grep -q 4; then
# client test against the server using TLS v1.3
./examples/client/client -v 4 -X -C -h $server -p 443 -g -d
RESULT=$?
[ $RESULT -ne 0 ] && echo -e "\n\nTLSv1.3 Client connection failed" && exit 1
fi
exit 0