diff --git a/docker-bench-security.sh b/docker-bench-security.sh index 8d9a602..c6e82d5 100755 --- a/docker-bench-security.sh +++ b/docker-bench-security.sh @@ -93,6 +93,9 @@ beginjson "$version" "$(date +%s)" # Load all the tests from tests/ and run them main () { + # Get configuration location + get_docker_configuration_file + # If there is a container with label docker_bench_security, memorize it: benchcont="nil" for c in $(docker ps | sed '1d' | awk '{print $NF}'); do diff --git a/helper_lib.sh b/helper_lib.sh index 9ccbc7f..9a84f8f 100644 --- a/helper_lib.sh +++ b/helper_lib.sh @@ -82,8 +82,7 @@ get_docker_effective_command_line_args() { get_docker_cumulative_command_line_args "$OPTION" | tail -n1 } -get_docker_configuration_file_args() { - OPTION="$1" +get_docker_configuration_file() { FILE="$(get_docker_effective_command_line_args '--config-file' | \ sed 's/.*=//g')" @@ -94,6 +93,12 @@ get_docker_configuration_file_args() { else CONFIG_FILE='/dev/null' fi +} + +get_docker_configuration_file_args() { + OPTION="$1" + + get_docker_configuration_file grep "$OPTION" "$CONFIG_FILE" | sed 's/.*://g' | tr -d '" ', } diff --git a/tests/2_docker_daemon_configuration.sh b/tests/2_docker_daemon_configuration.sh index e3437f1..9d39156 100644 --- a/tests/2_docker_daemon_configuration.sh +++ b/tests/2_docker_daemon_configuration.sh @@ -150,7 +150,7 @@ check_2_6() { starttestjson "$id_2_6" "$desc_2_6" totalChecks=$((totalChecks + 1)) - if grep -qi 'tcp://' "$CONFIG_FILE" || \ + if [ $(get_docker_configuration_file_args 'tcp://') ] || \ [ $(get_docker_cumulative_command_line_args '-H' | grep -vE '(unix|fd)://') >/dev/null 2>&1 ]; then if [ $(get_docker_configuration_file_args '"tlsverify":' | grep 'true') ] || \ [ $(get_docker_cumulative_command_line_args '--tlsverify' | grep 'tlsverify') >/dev/null 2>&1 ]; then