summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorinoguchi <>2018-08-27 06:50:13 +0000
committerinoguchi <>2018-08-27 06:50:13 +0000
commitca38cb83a45306d2c43cf255009ccdddf2edf4b9 (patch)
tree17b4cbc03ba88f3086d6c612e1e1dacd9b254aad /src
parent7bbacc3f2d14d47261e2d7e6a1789741026a1670 (diff)
downloadopenbsd-ca38cb83a45306d2c43cf255009ccdddf2edf4b9.tar.gz
openbsd-ca38cb83a45306d2c43cf255009ccdddf2edf4b9.tar.bz2
openbsd-ca38cb83a45306d2c43cf255009ccdddf2edf4b9.zip
Add protocol and cipher patterns in regress appstest.sh
Diffstat (limited to 'src')
-rwxr-xr-xsrc/regress/usr.bin/openssl/appstest.sh106
1 files changed, 88 insertions, 18 deletions
diff --git a/src/regress/usr.bin/openssl/appstest.sh b/src/regress/usr.bin/openssl/appstest.sh
index 69b3d4b8f7..79b863392d 100755
--- a/src/regress/usr.bin/openssl/appstest.sh
+++ b/src/regress/usr.bin/openssl/appstest.sh
@@ -1,6 +1,6 @@
1#!/bin/sh 1#!/bin/sh
2# 2#
3# $OpenBSD: appstest.sh,v 1.8 2018/08/26 13:28:13 inoguchi Exp $ 3# $OpenBSD: appstest.sh,v 1.9 2018/08/27 06:50:13 inoguchi Exp $
4# 4#
5# Copyright (c) 2016 Kinichiro Inoguchi <inoguchi@openbsd.org> 5# Copyright (c) 2016 Kinichiro Inoguchi <inoguchi@openbsd.org>
6# 6#
@@ -940,22 +940,18 @@ check_exit_status $?
940 940
941#---------#---------#---------#---------#---------#---------#---------#--------- 941#---------#---------#---------#---------#---------#---------#---------#---------
942 942
943# --- client/server operations --- 943# --- client/server operations (TLS) ---
944section_message "client/server operations" 944section_message "client/server operations (TLS)"
945 945
946host="localhost" 946host="localhost"
947port=4433 947port=4433
948sess_dat=$user1_dir/s_client_sess.dat 948sess_dat=$user1_dir/s_client_sess.dat
949s_server_out=$server_dir/s_server.out 949s_server_out=$server_dir/s_server_tls.out
950s_client_1_out=$user1_dir/s_client_1.out
951s_client_2_out=$user1_dir/s_client_2.out
952s_client_3_out=$user1_dir/s_client_3.out
953 950
954start_message "s_server ... start SSL/TLS test server" 951start_message "s_server ... start SSL/TLS test server"
955$openssl_bin s_server -accept $port -CAfile $ca_cert \ 952$openssl_bin s_server -accept $port -CAfile $ca_cert \
956 -cert $server_cert -key $server_key -pass pass:$server_pass \ 953 -cert $server_cert -key $server_key -pass pass:$server_pass \
957 -context "appstest.sh" -id_prefix "APPSTEST.SH" \ 954 -context "appstest.sh" -id_prefix "APPSTEST.SH" -crl_check \
958 -crl_check -no_ssl2 -no_ssl3 -no_tls1 \
959 -nextprotoneg "http/1.1,spdy/3" -alpn "http/1.1,spdy/3" -www \ 955 -nextprotoneg "http/1.1,spdy/3" -alpn "http/1.1,spdy/3" -www \
960 -msg -tlsextdebug > $s_server_out 2>&1 & 956 -msg -tlsextdebug > $s_server_out 2>&1 &
961check_exit_status $? 957check_exit_status $?
@@ -963,44 +959,118 @@ s_server_pid=$!
963echo "s_server pid = [ $s_server_pid ]" 959echo "s_server pid = [ $s_server_pid ]"
964sleep 1 960sleep 1
965 961
966start_message "s_client ... connect to SSL/TLS test server" 962# protocol = TLSv1
963
964s_client_out=$user1_dir/s_client_tls_1_0.out
965
966start_message "s_client ... connect to SSL/TLS test server by TLSv1"
967$openssl_bin s_client -connect $host:$port -CAfile $ca_cert -pause -prexit \
968 -tls1 -msg -tlsextdebug < /dev/null > $s_client_out 2>&1
969check_exit_status $?
970
971grep 'Protocol : TLSv1$' $s_client_out > /dev/null
972check_exit_status $?
973
974grep 'Verify return code: 0 (ok)' $s_client_out > /dev/null
975check_exit_status $?
976
977# protocol = TLSv1.1
978
979s_client_out=$user1_dir/s_client_tls_1_1.out
980
981start_message "s_client ... connect to SSL/TLS test server by TLSv1.1"
982$openssl_bin s_client -connect $host:$port -CAfile $ca_cert -pause -prexit \
983 -tls1_1 -msg -tlsextdebug < /dev/null > $s_client_out 2>&1
984check_exit_status $?
985
986grep 'Protocol : TLSv1\.1$' $s_client_out > /dev/null
987check_exit_status $?
988
989grep 'Verify return code: 0 (ok)' $s_client_out > /dev/null
990check_exit_status $?
991
992# protocol = TLSv1.2
993
994s_client_out=$user1_dir/s_client_tls_1_2.out
995
996start_message "s_client ... connect to SSL/TLS test server by TLSv1.2"
997$openssl_bin s_client -connect $host:$port -CAfile $ca_cert -pause -prexit \
998 -tls1_2 -msg -tlsextdebug < /dev/null > $s_client_out 2>&1
999check_exit_status $?
1000
1001grep 'Protocol : TLSv1\.2$' $s_client_out > /dev/null
1002check_exit_status $?
1003
1004grep 'Verify return code: 0 (ok)' $s_client_out > /dev/null
1005check_exit_status $?
1006
1007# cipher = CHACHA20
1008
1009s_client_out=$user1_dir/s_client_tls_chacha20.out
1010
1011start_message "s_client ... connect to SSL/TLS test server with CHACHA20"
1012$openssl_bin s_client -connect $host:$port -CAfile $ca_cert -pause -prexit \
1013 -cipher 'CHACHA20' -msg -tlsextdebug < /dev/null > $s_client_out 2>&1
1014check_exit_status $?
1015
1016grep 'Cipher : .*-CHACHA20-.*' $s_client_out > /dev/null
1017check_exit_status $?
1018
1019grep 'Verify return code: 0 (ok)' $s_client_out > /dev/null
1020check_exit_status $?
1021
1022# Get session ticket to reuse
1023
1024s_client_out=$user1_dir/s_client_tls_reuse_1.out
1025
1026start_message "s_client ... connect to SSL/TLS test server to get session id"
967$openssl_bin s_client -connect $host:$port -CAfile $ca_cert -pause -prexit \ 1027$openssl_bin s_client -connect $host:$port -CAfile $ca_cert -pause -prexit \
968 -nextprotoneg "spdy/3,http/1.1" -alpn "spdy/3,http/1.1" \ 1028 -nextprotoneg "spdy/3,http/1.1" -alpn "spdy/3,http/1.1" \
969 -sess_out $sess_dat \ 1029 -sess_out $sess_dat \
970 -msg -tlsextdebug < /dev/null > $s_client_1_out 2>&1 1030 -msg -tlsextdebug < /dev/null > $s_client_out 2>&1
971check_exit_status $? 1031check_exit_status $?
972 1032
973grep 'New, TLSv1/SSLv3' $s_client_1_out > /dev/null 1033grep 'New, TLSv1/SSLv3' $s_client_out > /dev/null
974check_exit_status $? 1034check_exit_status $?
975 1035
976grep 'Verify return code: 0 (ok)' $s_client_1_out > /dev/null 1036grep 'Verify return code: 0 (ok)' $s_client_out > /dev/null
977check_exit_status $? 1037check_exit_status $?
978 1038
1039# Reuse session ticket
1040
1041s_client_out=$user1_dir/s_client_tls_reuse_2.out
1042
979start_message "s_client ... connect to SSL/TLS test server reusing session id" 1043start_message "s_client ... connect to SSL/TLS test server reusing session id"
980$openssl_bin s_client -connect $host:$port -CAfile $ca_cert -pause -prexit \ 1044$openssl_bin s_client -connect $host:$port -CAfile $ca_cert -pause -prexit \
981 -sess_in $sess_dat \ 1045 -sess_in $sess_dat \
982 -msg -tlsextdebug < /dev/null > $s_client_2_out 2>&1 1046 -msg -tlsextdebug < /dev/null > $s_client_out 2>&1
983check_exit_status $? 1047check_exit_status $?
984 1048
985grep 'Reused, TLSv1/SSLv3' $s_client_2_out > /dev/null 1049grep 'Reused, TLSv1/SSLv3' $s_client_out > /dev/null
986check_exit_status $? 1050check_exit_status $?
987 1051
988grep 'Verify return code: 0 (ok)' $s_client_2_out > /dev/null 1052grep 'Verify return code: 0 (ok)' $s_client_out > /dev/null
989check_exit_status $? 1053check_exit_status $?
990 1054
1055# invalid verification pattern
1056
1057s_client_out=$user1_dir/s_client_tls_invalid.out
1058
991start_message "s_client ... connect to SSL/TLS test server but verify error" 1059start_message "s_client ... connect to SSL/TLS test server but verify error"
992$openssl_bin s_client -connect $host:$port -CAfile $ca_cert -pause -prexit \ 1060$openssl_bin s_client -connect $host:$port -CAfile $ca_cert -pause -prexit \
993 -showcerts -crl_check -issuer_checks -policy_check \ 1061 -showcerts -crl_check -issuer_checks -policy_check \
994 -msg -tlsextdebug < /dev/null > $s_client_3_out 2>&1 1062 -msg -tlsextdebug < /dev/null > $s_client_out 2>&1
995check_exit_status $? 1063check_exit_status $?
996 1064
997grep 'Verify return code: 24 (invalid CA certificate)' $s_client_3_out > /dev/null 1065grep 'Verify return code: 24 (invalid CA certificate)' $s_client_out > /dev/null
998check_exit_status $? 1066check_exit_status $?
999 1067
1068# s_time
1000start_message "s_time ... connect to SSL/TLS test server" 1069start_message "s_time ... connect to SSL/TLS test server"
1001$openssl_bin s_time -connect $host:$port -CAfile $ca_cert -time 2 1070$openssl_bin s_time -connect $host:$port -CAfile $ca_cert -time 2
1002check_exit_status $? 1071check_exit_status $?
1003 1072
1073# sess_id
1004start_message "sess_id" 1074start_message "sess_id"
1005$openssl_bin sess_id -in $sess_dat -text -out $sess_dat.out 1075$openssl_bin sess_id -in $sess_dat -text -out $sess_dat.out
1006check_exit_status $? 1076check_exit_status $?