#!/bin/sh # external.test SCRIPT_DIR="$(dirname "$0")" server=www.wolfssl.com ca=./certs/wolfssl-website-ca.pem [ ! -x ./examples/client/client ] && echo -e "\n\nClient doesn't exist" && exit 1 # www.wolfssl.com isn't using RFC 8446 yet but the draft instead. ./examples/client/client -v 3 2>&1 | grep -- 'Bad SSL version' if [ $? -ne 0 ]; then # cloudflare seems to change CAs quickly, disabled by default if test -n "$WOLFSSL_EXTERNAL_TEST"; then BUILD_FLAGS="$(./examples/client/client '-#')" if echo "$BUILD_FLAGS" | fgrep -q -e ' -DWOLFSSL_SNIFFER '; then echo 'skipping WOLFSSL_EXTERNAL_TEST because -DWOLFSSL_SNIFFER configuration of build is incompatible.' exit 0 fi if echo "$BUILD_FLAGS" | fgrep -v -q -e ' -DHAVE_ECC '; then echo 'skipping WOLFSSL_EXTERNAL_TEST because -UHAVE_ECC configuration of build is incompatible.' exit 0 fi echo "WOLFSSL_EXTERNAL_TEST set, running test..." else echo "WOLFSSL_EXTERNAL_TEST NOT set, won't run" exit 0 fi # is our desired server there? "${SCRIPT_DIR}"/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 -A $ca RESULT=$? [ $RESULT -ne 0 ] && echo -e "\n\nClient connection failed" && exit 1 fi exit 0