From 187773eaa378e73d7150f1ba1bb87fc96a95e830 Mon Sep 17 00:00:00 2001 From: Tim Wojtulewicz Date: Wed, 12 Apr 2023 16:08:26 -0700 Subject: [PATCH] Reimplement fixes to handle commas at the end of config parser lines --- src/input/readers/config/Config.cc | 7 +++++-- .../scripts.base.frameworks.config.basic/zeek.config.log | 3 ++- testing/btest/scripts/base/frameworks/config/basic.zeek | 1 + 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/input/readers/config/Config.cc b/src/input/readers/config/Config.cc index e019008f81..ad2f46da41 100644 --- a/src/input/readers/config/Config.cc +++ b/src/input/readers/config/Config.cc @@ -181,9 +181,12 @@ bool Config::DoUpdate() unseen_options.insert(i.first); } + std::string re_str = Fmt( + "^([^[:blank:]]+)[[:blank:]]+([^[:blank:]](.*[^[:blank:]%c])?)?[[:blank:]%c]*$", + set_separator[0], set_separator[0]); + regex_t re; - if ( regcomp(&re, "^([^[:blank:]]+)[[:blank:]]+([^[:blank:]](.*[^[:blank:]])?)?[[:blank:]]*$", - REG_EXTENDED) ) + if ( regcomp(&re, re_str.c_str(), REG_EXTENDED) ) { Error(Fmt("Failed to compile regex.")); return true; diff --git a/testing/btest/Baseline/scripts.base.frameworks.config.basic/zeek.config.log b/testing/btest/Baseline/scripts.base.frameworks.config.basic/zeek.config.log index 6d2ab58c17..ee147dbd53 100644 --- a/testing/btest/Baseline/scripts.base.frameworks.config.basic/zeek.config.log +++ b/testing/btest/Baseline/scripts.base.frameworks.config.basic/zeek.config.log @@ -23,7 +23,8 @@ XXXXXXXXXX.XXXXXX testsub 2607:f8b0:4001::/48 2607:f8b0:4002::/48 ../configfile XXXXXXXXXX.XXXXXX testinterval 1.0 sec 1.0 min ../configfile XXXXXXXXXX.XXXXXX testtime 0.0 XXXXXXXXXX.XXXXXX ../configfile XXXXXXXXXX.XXXXXX test_set (empty) a,d,b,c,erdbeerschnitzel ../configfile +XXXXXXXXXX.XXXXXX test_set a,d,b,c,erdbeerschnitzel a,c,b ../configfile XXXXXXXXXX.XXXXXX test_vector (empty) 1,2,3,4,5,6 ../configfile -XXXXXXXXXX.XXXXXX test_set a,d,b,c,erdbeerschnitzel (empty) ../configfile +XXXXXXXXXX.XXXXXX test_set a,c,b (empty) ../configfile XXXXXXXXXX.XXXXXX test_set (empty) \x2d ../configfile #close XXXX-XX-XX-XX-XX-XX diff --git a/testing/btest/scripts/base/frameworks/config/basic.zeek b/testing/btest/scripts/base/frameworks/config/basic.zeek index 384d4a3303..c4dd75a6c5 100644 --- a/testing/btest/scripts/base/frameworks/config/basic.zeek +++ b/testing/btest/scripts/base/frameworks/config/basic.zeek @@ -27,6 +27,7 @@ testsub [2607:f8b0:4002:801::]/48 testinterval 60 testtime 1507321987 test_set a,b,c,d,erdbeerschnitzel +test_set a,b,c, test_vector 1,2,3,4,5,6 test_set test_set -