Fix test scripts portability issues
diff --git a/tests/compat.sh b/tests/compat.sh
index 861d20e..260b26f 100755
--- a/tests/compat.sh
+++ b/tests/compat.sh
@@ -51,16 +51,16 @@
print_usage() {
echo "Usage: $0"
- echo -e " -h|--help\tPrint this help."
- echo -e " -f|--filter\tOnly matching ciphersuites are tested (Default: '$FILTER')"
- echo -e " -e|--exclude\tMatching ciphersuites are excluded (Default: '$EXCLUDE')"
- echo -e " -m|--modes\tWhich modes to perform (Default: '$MODES')"
- echo -e " -t|--types\tWhich key exchange type to perform (Default: '$TYPES')"
- echo -e " -V|--verify\tWhich verification modes to perform (Default: '$VERIFIES')"
- echo -e " -p|--peers\tWhich peers to use (Default: '$PEERS')"
- echo -e " \tAlso available: GnuTLS (needs v3.2.15 or higher)"
- echo -e " -M|--memcheck\tCheck memory leaks and errors."
- echo -e " -v|--verbose\tSet verbose output."
+ printf " -h|--help\tPrint this help.\n"
+ printf " -f|--filter\tOnly matching ciphersuites are tested (Default: '$FILTER')\n"
+ printf " -e|--exclude\tMatching ciphersuites are excluded (Default: '$EXCLUDE')\n"
+ printf " -m|--modes\tWhich modes to perform (Default: '$MODES')\n"
+ printf " -t|--types\tWhich key exchange type to perform (Default: '$TYPES')\n"
+ printf " -V|--verify\tWhich verification modes to perform (Default: '$VERIFIES')\n"
+ printf " -p|--peers\tWhich peers to use (Default: '$PEERS')\n"
+ printf " \tAlso available: GnuTLS (needs v3.2.15 or higher)\n"
+ printf " -M|--memcheck\tCheck memory leaks and errors.\n"
+ printf " -v|--verbose\tSet verbose output.\n"
}
get_options() {
@@ -121,7 +121,7 @@
done
# normalize whitespace
- echo "$NEW_LIST" | sed -e 's/[[:space:]]\+/ /g' -e 's/^ //' -e 's/ $//'
+ echo "$NEW_LIST" | sed -e 's/[[:space:]][[:space:]]*/ /g' -e 's/^ //' -e 's/ $//'
}
filter_ciphersuites()
@@ -834,9 +834,9 @@
VERIF=$(echo $VERIFY | tr '[:upper:]' '[:lower:]')
TITLE="`echo $1 | head -c1`->`echo $SERVER_NAME | head -c1`"
TITLE="$TITLE $MODE,$VERIF $2"
- echo -n "$TITLE "
+ printf "$TITLE "
LEN=$(( 72 - `echo "$TITLE" | wc -c` ))
- for i in `seq 1 $LEN`; do echo -n '.'; done; echo -n ' '
+ for i in `seq 1 $LEN`; do printf '.'; done; printf ' '
# run the command and interpret result
case $1 in
@@ -1095,9 +1095,9 @@
if [ $FAILED -ne 0 -o $SRVMEM -ne 0 ];
then
- echo -n "FAILED"
+ printf "FAILED"
else
- echo -n "PASSED"
+ printf "PASSED"
fi
if [ "$MEMCHECK" -gt 0 ]; then
diff --git a/tests/ssl-opt.sh b/tests/ssl-opt.sh
index 4eafed4..f94808d 100755
--- a/tests/ssl-opt.sh
+++ b/tests/ssl-opt.sh
@@ -34,10 +34,10 @@
print_usage() {
echo "Usage: $0 [options]"
- echo -e " -h|--help\tPrint this help."
- echo -e " -m|--memcheck\tCheck memory leaks and errors."
- echo -e " -f|--filter\tOnly matching tests are executed (default: '$FILTER')"
- echo -e " -e|--exclude\tMatching tests are excluded (default: '$EXCLUDE')"
+ printf " -h|--help\tPrint this help.\n"
+ printf " -m|--memcheck\tCheck memory leaks and errors.\n"
+ printf " -f|--filter\tOnly matching tests are executed (default: '$FILTER')\n"
+ printf " -e|--exclude\tMatching tests are excluded (default: '$EXCLUDE')\n"
}
get_options() {
@@ -96,10 +96,10 @@
# print_name <name>
print_name() {
- echo -n "$1 "
+ printf "$1 "
LEN=$(( 72 - `echo "$1" | wc -c` ))
- for i in `seq 1 $LEN`; do echo -n '.'; done
- echo -n ' '
+ for i in `seq 1 $LEN`; do printf '.'; done
+ printf ' '
TESTS=$(( $TESTS + 1 ))
}
@@ -148,7 +148,8 @@
WATCHDOG_PID=$!
# make a tight loop, server usually takes less than 1 sec to start
- until lsof -nbi TCP:"$PORT" | grep LISTEN >/dev/null; do :; done
+ until lsof -nbi TCP:"$PORT" 2>/dev/null | grep LISTEN >/dev/null;
+ do :; done
kill $WATCHDOG_PID
wait $WATCHDOG_PID
@@ -1848,9 +1849,9 @@
echo "------------------------------------------------------------------------"
if [ $FAILS = 0 ]; then
- echo -n "PASSED"
+ printf "PASSED"
else
- echo -n "FAILED"
+ printf "FAILED"
fi
PASSES=$(( $TESTS - $FAILS ))
echo " ($PASSES / $TESTS tests ($SKIPS skipped))"