2
0
mirror of https://github.com/mozilla/cipherscan.git synced 2024-10-05 18:53:40 +02:00

few less forks in the script

again, we can use arrays and a bit advanced awk syntax to reduce
the number of forks necessary to run the script
This commit is contained in:
Hubert Kario 2014-07-12 14:54:33 +02:00 committed by Hubert Kario
parent 9f9af9c71d
commit 0071870c7c

View File

@ -183,7 +183,7 @@ test_cipher_on_target() {
/-----BEGIN CERTIFICATE-----/ { output=1 } /-----BEGIN CERTIFICATE-----/ { output=1 }
output==1 { if (n==i) print } output==1 { if (n==i) print }
/-----END CERTIFICATE-----/ { output=0; n++ }' <<<"$tmp") /-----END CERTIFICATE-----/ { output=0; n++ }' <<<"$tmp")
# put the output to an array instead awk '{print $1}' # put the output to an array instead running awk '{print $1}'
local cksum=($(cksum <<<"$cert")) local cksum=($(cksum <<<"$cert"))
# compare the values not just checksums so that eventual collision # compare the values not just checksums so that eventual collision
# doesn't mess up results # doesn't mess up results
@ -339,7 +339,7 @@ get_cipher_pref() {
if [ $success -eq 0 ]; then if [ $success -eq 0 ]; then
cipherspref=("${cipherspref[@]}" "$result") cipherspref=("${cipherspref[@]}" "$result")
ciphercertificates=("${ciphercertificates[@]}" "$certificates") ciphercertificates=("${ciphercertificates[@]}" "$certificates")
pciph=$(echo $result|awk '{print $1}') pciph=($(echo $result))
get_cipher_pref "!$pciph:$ciphersuite" get_cipher_pref "!$pciph:$ciphersuite"
return 0 return 0
fi fi
@ -356,7 +356,7 @@ display_results_in_terminal() {
local ocspstaple local ocspstaple
local different=False local different=False
for cipher in "${cipherspref[@]}"; do for cipher in "${cipherspref[@]}"; do
pciph=$(echo $cipher|awk '{print $1}') pciph=($(echo $cipher))
if [ $DOBENCHMARK -eq 1 ]; then if [ $DOBENCHMARK -eq 1 ]; then
bench_cipher "$pciph" bench_cipher "$pciph"
r="$ctr $cipher $cipherbenchms" r="$ctr $cipher $cipherbenchms"
@ -410,7 +410,7 @@ display_results_in_terminal() {
echo $result|grep -v '(NONE)' echo $result|grep -v '(NONE)'
else else
# prints priority, ciphersuite, protocols and pfs_keysize # prints priority, ciphersuite, protocols and pfs_keysize
echo $result|grep -v '(NONE)'|awk '{print $1 " " $2 " " $3 " " $9}' awk '!/(NONE)/{print $1 " " $2 " " $3 " " $9}' <<<"$result"
fi fi
done|column -t done|column -t
echo echo