From 0279c2fc706910d02a6c6bf3464a3fb0810abd77 Mon Sep 17 00:00:00 2001 From: Dave Rodgman Date: Wed, 10 Feb 2021 12:45:41 +0000 Subject: [PATCH] ssl-opt.sh: add --priority=normal to gnutls For calls to gnutls-serv and gnutls-cli where --priority is not specified, explicitly add the default value: --priority=normal. This is needed for some tests on Ubuntu 20.04 (gnutls 3.6.13). For example: ./ssl-opt.sh -f "DTLS fragmenting: gnutls.*1.0" requires this PR to work on Ubuntu 20.04 Signed-off-by: Dave Rodgman --- tests/ssl-opt.sh | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/tests/ssl-opt.sh b/tests/ssl-opt.sh index fcd73f2c0..01fcb5ac6 100755 --- a/tests/ssl-opt.sh +++ b/tests/ssl-opt.sh @@ -634,6 +634,21 @@ detect_dtls() { fi } +# check if the given command uses gnutls and sets global variable CMD_IS_GNUTLS +is_gnutls() { + case "$1" in + *gnutls-cli*) + CMD_IS_GNUTLS=1 + ;; + *gnutls-serv*) + CMD_IS_GNUTLS=1 + ;; + *) + CMD_IS_GNUTLS=0 + ;; + esac +} + # Compare file content # Usage: find_in_both pattern file1 file2 # extract from file1 the first line matching the pattern @@ -726,6 +741,30 @@ run_test() { esac fi + # update CMD_IS_GNUTLS variable + is_gnutls "$SRV_CMD" + + # if the server uses gnutls but doesn't set priority, explicitly + # set the default priority + if [ "$CMD_IS_GNUTLS" -eq 1 ]; then + case "$SRV_CMD" in + *--priority*) :;; + *) SRV_CMD="$SRV_CMD --priority=NORMAL";; + esac + fi + + # update CMD_IS_GNUTLS variable + is_gnutls "$CLI_CMD" + + # if the client uses gnutls but doesn't set priority, explicitly + # set the default priority + if [ "$CMD_IS_GNUTLS" -eq 1 ]; then + case "$CLI_CMD" in + *--priority*) :;; + *) CLI_CMD="$CLI_CMD --priority=NORMAL";; + esac + fi + # fix client port if [ -n "$PXY_CMD" ]; then CLI_CMD=$( echo "$CLI_CMD" | sed s/+SRV_PORT/$PXY_PORT/g )