mirror of
https://github.com/yuzu-emu/mbedtls
synced 2024-11-25 10:39:25 +00:00
compat.sh: factor code into run_client() function
This commit is contained in:
parent
304beef2ae
commit
330e4111cb
1 changed files with 71 additions and 67 deletions
138
tests/compat.sh
138
tests/compat.sh
|
@ -463,6 +463,68 @@ start_server() {
|
||||||
sleep 1
|
sleep 1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# run_client <name> <cipher>
|
||||||
|
run_client() {
|
||||||
|
# run the command and interpret result
|
||||||
|
case $1 in
|
||||||
|
[Oo]pen*)
|
||||||
|
CLIENT_CMD="$OPENSSL s_client $O_CLIENT_ARGS -cipher $2"
|
||||||
|
log "$CLIENT_CMD"
|
||||||
|
OUTPUT="$( ( echo -e 'GET HTTP/1.0'; echo; sleep 1 ) | $CLIENT_CMD 2>&1 )"
|
||||||
|
EXIT=$?
|
||||||
|
|
||||||
|
if [ "$EXIT" == "0" ]; then
|
||||||
|
RESULT=0
|
||||||
|
else
|
||||||
|
SUPPORTED="$( echo $OUTPUT | grep 'Cipher is (NONE)' )"
|
||||||
|
if [ "X$SUPPORTED" != "X" ]; then
|
||||||
|
RESULT=1
|
||||||
|
else
|
||||||
|
RESULT=2
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
|
||||||
|
[Pp]olar*)
|
||||||
|
CLIENT_CMD="../programs/ssl/ssl_client2 $P_CLIENT_ARGS force_ciphersuite=$2"
|
||||||
|
log "$CLIENT_CMD"
|
||||||
|
OUTPUT="$( $CLIENT_CMD )"
|
||||||
|
EXIT=$?
|
||||||
|
|
||||||
|
case $EXIT in
|
||||||
|
"0") RESULT=0 ;;
|
||||||
|
"2") RESULT=1 ;;
|
||||||
|
*) RESULT=2 ;;
|
||||||
|
esac
|
||||||
|
;;
|
||||||
|
|
||||||
|
*)
|
||||||
|
echo "error: invalid client name: $1" >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# report and count result
|
||||||
|
let "tests++"
|
||||||
|
echo -n "$SERVER_NAME Server - $1 Client - $2 : $EXIT - "
|
||||||
|
case $RESULT in
|
||||||
|
"0")
|
||||||
|
echo Success
|
||||||
|
;;
|
||||||
|
"1")
|
||||||
|
echo "Ciphersuite not supported"
|
||||||
|
let "skipped++"
|
||||||
|
;;
|
||||||
|
"2")
|
||||||
|
echo Failed
|
||||||
|
echo "$SERVER_CMD"
|
||||||
|
echo "$CLIENT_CMD"
|
||||||
|
echo "$OUTPUT"
|
||||||
|
let "failed++"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
for VERIFY in $VERIFIES;
|
for VERIFY in $VERIFIES;
|
||||||
do
|
do
|
||||||
|
|
||||||
|
@ -480,84 +542,26 @@ setup_ciphersuites
|
||||||
|
|
||||||
start_server "OpenSSL"
|
start_server "OpenSSL"
|
||||||
|
|
||||||
for i in $P_CIPHERS;
|
for i in $P_CIPHERS; do
|
||||||
do
|
run_client PolarSSL $i
|
||||||
let "tests++"
|
|
||||||
log "../programs/ssl/ssl_client2 $P_CLIENT_ARGS force_ciphersuite=$i"
|
|
||||||
RESULT="$( ../programs/ssl/ssl_client2 $P_CLIENT_ARGS force_ciphersuite=$i )"
|
|
||||||
EXIT=$?
|
|
||||||
echo -n "$SERVER_NAME Server - PolarSSL Client - $i : $EXIT - "
|
|
||||||
if [ "$EXIT" = "2" ];
|
|
||||||
then
|
|
||||||
echo Ciphersuite not supported in client
|
|
||||||
let "skipped++"
|
|
||||||
elif [ "$EXIT" != "0" ];
|
|
||||||
then
|
|
||||||
echo Failed
|
|
||||||
echo "$SERVER_CMD"
|
|
||||||
echo "ssl_client2 force_ciphersuite=$i $P_CLIENT_ARGS"
|
|
||||||
echo $RESULT
|
|
||||||
let "failed++"
|
|
||||||
else
|
|
||||||
echo Success
|
|
||||||
fi
|
|
||||||
done
|
done
|
||||||
|
|
||||||
kill $PROCESS_ID 2>/dev/null
|
kill $PROCESS_ID 2>/dev/null
|
||||||
wait $PROCESS_ID 2>/dev/null
|
wait $PROCESS_ID 2>/dev/null
|
||||||
|
|
||||||
start_server "PolarSSL"
|
start_server "PolarSSL"
|
||||||
|
|
||||||
for i in $O_CIPHERS;
|
for i in $O_CIPHERS; do
|
||||||
do
|
run_client OpenSSL $i
|
||||||
let "tests++"
|
|
||||||
log "$OPENSSL s_client $O_CLIENT_ARGS -cipher $i"
|
|
||||||
RESULT="$( ( echo -e 'GET HTTP/1.0'; echo; sleep 1 ) | $OPENSSL s_client $O_CLIENT_ARGS -cipher $i 2>&1 )"
|
|
||||||
EXIT=$?
|
|
||||||
echo -n "$SERVER_NAME Server - OpenSSL Client - $i : $EXIT - "
|
|
||||||
|
|
||||||
if [ "$EXIT" != "0" ];
|
|
||||||
then
|
|
||||||
SUPPORTED="$( echo $RESULT | grep 'Cipher is (NONE)' )"
|
|
||||||
if [ "X$SUPPORTED" != "X" ]
|
|
||||||
then
|
|
||||||
echo "Ciphersuite not supported in server"
|
|
||||||
let "skipped++"
|
|
||||||
else
|
|
||||||
echo Failed
|
|
||||||
echo "$SERVER_CMD"
|
|
||||||
echo "$OPENSSL s_client $O_CLIENT_ARGS -cipher $i"
|
|
||||||
echo $RESULT
|
|
||||||
let "failed++"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
echo Success
|
|
||||||
fi
|
|
||||||
done
|
done
|
||||||
|
|
||||||
|
echo "-----------"
|
||||||
add_polarssl_ciphersuites
|
add_polarssl_ciphersuites
|
||||||
|
|
||||||
for i in $P_CIPHERS;
|
for i in $P_CIPHERS; do
|
||||||
do
|
run_client PolarSSL $i
|
||||||
let "tests++"
|
|
||||||
log "../programs/ssl/ssl_client2 force_ciphersuite=$i $P_CLIENT_ARGS"
|
|
||||||
RESULT="$( ../programs/ssl/ssl_client2 force_ciphersuite=$i $P_CLIENT_ARGS )"
|
|
||||||
EXIT=$?
|
|
||||||
echo -n "$SERVER_NAME Server - PolarSSL Client - $i : $EXIT - "
|
|
||||||
if [ "$EXIT" = "2" ];
|
|
||||||
then
|
|
||||||
echo Ciphersuite not supported in client
|
|
||||||
let "skipped++"
|
|
||||||
elif [ "$EXIT" != "0" ];
|
|
||||||
then
|
|
||||||
echo Failed
|
|
||||||
echo "$SERVER_CMD"
|
|
||||||
echo "ssl_client2 force_ciphersuite=$i $P_CLIENT_ARGS"
|
|
||||||
echo $RESULT
|
|
||||||
let "failed++"
|
|
||||||
else
|
|
||||||
echo Success
|
|
||||||
fi
|
|
||||||
done
|
done
|
||||||
|
|
||||||
kill $PROCESS_ID 2>/dev/null
|
kill $PROCESS_ID 2>/dev/null
|
||||||
wait $PROCESS_ID 2>/dev/null
|
wait $PROCESS_ID 2>/dev/null
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue