]>
git.proxmox.com Git - ceph.git/blob - ceph/src/jaegertracing/thrift/test/features/tls.sh
4 # Checks to make sure TLSv1.0 or later is allowed by a server.
10 while [[ $# -ge 1 ]]; do
16 THRIFTHOST
=${argIN[1]}
20 THRIFTPORT
=${argIN[1]}
24 # unknown option ignored
28 shift # past argument or value
31 declare -A EXPECT_NEGOTIATE
32 EXPECT_NEGOTIATE
[tls1
]=1
33 EXPECT_NEGOTIATE
[tls1_1
]=1
34 EXPECT_NEGOTIATE
[tls1_2
]=1
35 EXPECT_NEGOTIATE
[tls1_3
]=1
41 for PROTO
in "${!EXPECT_NEGOTIATE[@]}"; do
47 echo "openssl s_client -connect $THRIFTHOST:$THRIFTPORT -CAfile ../keys/CA.pem -$PROTO 2>&1 < /dev/null"
48 nego
=$
(openssl s_client
-connect $THRIFTHOST:$THRIFTPORT -CAfile ..
/keys
/CA.pem
-$PROTO 2>&1 < /dev
/null
)
50 echo "result of command: $negodenied"
52 res
="enabled"; if [[ ${EXPECT_NEGOTIATE[$PROTO]} -eq 0 ]]; then res
="disabled"; fi
54 if [[ $negodenied -ne ${EXPECT_NEGOTIATE[$PROTO]} ]]; then
55 echo "$PROTO negotiation allowed"
57 echo "[warn] $PROTO negotiation did not work"
66 if [[ $failures -eq 4 ]]; then
67 echo "[fail] At least one of TLSv1.0, TLSv1.1, TLSv1.2, or TLSv1.3 needs to work, but does not"
71 echo "[pass] At least one of TLSv1.0, TLSv1.1, TLSv1.2, or TLSv1.3 worked"