From 7f4914c219d3952b7d6586cab0ad154297839c3f Mon Sep 17 00:00:00 2001 From: Seth Hall Date: Tue, 4 Aug 2020 12:34:04 -0400 Subject: [PATCH] Fix config reader regular expression for MUSL. It was not dealing with multiple spaces between the key and the value with MUSL correctly. This change ensures that if a value exists, that it begins and ends with a non-blank character. --- src/input/readers/config/Config.cc | 2 +- .../Baseline/scripts.base.frameworks.input.config.basic/out | 1 + testing/btest/scripts/base/frameworks/input/config/basic.zeek | 1 + 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/input/readers/config/Config.cc b/src/input/readers/config/Config.cc index ec5c731b2b..6af8881340 100644 --- a/src/input/readers/config/Config.cc +++ b/src/input/readers/config/Config.cc @@ -182,7 +182,7 @@ bool Config::DoUpdate() } regex_t re; - if ( regcomp(&re, "^([^[:blank:]]+)[[:blank:]]+(.*[^[:blank:]])?[[:blank:]]*$", REG_EXTENDED) ) + if ( regcomp(&re, "^([^[:blank:]]+)[[:blank:]]+([^[:blank:]](.*[^[:blank:]])?)?[[:blank:]]*$", REG_EXTENDED) ) { Error(Fmt("Failed to compile regex.")); return true; diff --git a/testing/btest/Baseline/scripts.base.frameworks.input.config.basic/out b/testing/btest/Baseline/scripts.base.frameworks.input.config.basic/out index 8527415ce0..c2b42449e7 100644 --- a/testing/btest/Baseline/scripts.base.frameworks.input.config.basic/out +++ b/testing/btest/Baseline/scripts.base.frameworks.input.config.basic/out @@ -26,3 +26,4 @@ test_set, { test_set, { - } +teststring, abc diff --git a/testing/btest/scripts/base/frameworks/input/config/basic.zeek b/testing/btest/scripts/base/frameworks/input/config/basic.zeek index 3ceb0cea9a..338d29c034 100644 --- a/testing/btest/scripts/base/frameworks/input/config/basic.zeek +++ b/testing/btest/scripts/base/frameworks/input/config/basic.zeek @@ -24,6 +24,7 @@ test_vector 1 2 3 4 5 6 test_set (empty) test_set EMPTY test_set - +teststring abc @TEST-END-FILE @load base/protocols/ssh