From dca614d2180259fc1edd91f9c6f0752768247ca8 Mon Sep 17 00:00:00 2001 From: Hubert Kario Date: Fri, 9 May 2014 14:44:50 +0200 Subject: [PATCH] use proper quit semantic for openssl s_client openssl s_client expect "Q" as the first character on a line, with case being significant. Also, the \n marker is unnecessary the echo command prints a newline automatically, additionally, for the \n to be actually interpreted, the -e option must be used --- cipherscan | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/cipherscan b/cipherscan index 2a0ed12..e063fe8 100755 --- a/cipherscan +++ b/cipherscan @@ -72,8 +72,8 @@ test_cipher_on_target() { previous_cipher="" for tls_version in "-ssl2" "-ssl3" "-tls1" "-tls1_1" "-tls1_2" do - debug echo \"quit\\n\" \| $sslcommand $tls_version - local tmp=$(echo "quit\n" | $sslcommand $tls_version 1>/dev/stdout 2>/dev/null) + debug echo \"Q\" \| $sslcommand $tls_version + local tmp=$(echo "Q" | $sslcommand $tls_version 1>/dev/stdout 2>/dev/null) current_cipher=$(grep "New, " <<<"$tmp"|awk '{print $5}') current_pfs=$(grep 'Server Temp Key' <<<"$tmp"|awk '{print $4$5$6$7}') current_protocol=$(egrep "^\s+Protocol\s+:" <<<"$tmp"|awk '{print $3}') @@ -146,7 +146,7 @@ bench_cipher() { verbose "Benchmarking handshake on '$TARGET' with ciphersuite '$ciphersuite'" for i in $(seq 1 $BENCHMARKITER); do debug Connection $i - (echo "quit\n" | $sslcommand 2>/dev/null 1>/dev/null) + (echo "Q" | $sslcommand 2>/dev/null 1>/dev/null) if [ $? -gt 0 ]; then break fi