From: Michael Altizer (mialtize) Date: Fri, 25 Jan 2019 00:33:29 +0000 (-0500) Subject: Merge pull request #1495 in SNORT/snort3 from ~CWAXMAN/snort3:snort2lua_dups to master X-Git-Tag: 3.0.0-251~61 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=10156db4ce62cef518eb11d263e580666f2a3e96;p=thirdparty%2Fsnort3.git Merge pull request #1495 in SNORT/snort3 from ~CWAXMAN/snort3:snort2lua_dups to master Squashed commit of the following: commit 23c4095f92f55477ca250c1c458893c77ca7e739 Author: Carter Waxman Date: Thu Jan 24 12:30:33 2019 -0500 snort2lua: fixed duplication of split_any_any from config: detection --- diff --git a/tools/snort2lua/config_states/config_detection.cc b/tools/snort2lua/config_states/config_detection.cc index 0f8d1ce5d..5711a0437 100644 --- a/tools/snort2lua/config_states/config_detection.cc +++ b/tools/snort2lua/config_states/config_detection.cc @@ -71,7 +71,6 @@ bool Detection::convert(std::istringstream& data_stream) else if (keyword == "split-any-any") { table_api.add_diff_option_comment("split-any-any", "split_any_any"); - tmpval = table_api.add_option("split_any_any", true); split_set = true; } else if (keyword == "bleedover-warnings-enabled") @@ -231,13 +230,8 @@ bool Detection::convert(std::istringstream& data_stream) { table_api.add_diff_option_comment("ac-split", "split_any_any"); table_api.add_diff_option_comment("ac-split", "ac_full"); - bool tmpval2 = table_api.add_option("split_any_any", true); - bool tmpval1 = table_api.add_option("search_method", "ac_full"); + tmpval = table_api.add_option("search_method", "ac_full"); split_set = true; - tmpval = tmpval1 && tmpval2; - - if (!table_api.add_option("split_any_any", true)) - tmpval = false; } else { @@ -250,10 +244,25 @@ bool Detection::convert(std::istringstream& data_stream) if (retval && !tmpval) retval = false; } - if ( !split_set ) + + if ( table_api.option_exists("split_any_any") ) { - table_api.add_diff_option_comment("split-any-any", "split_any_any = true by default"); - table_api.add_option("split_any_any", false); + std::string val; + table_api.get_option_value("split_any_any", val); + + if ( val == "false" ) + { + if ( !split_set ) + table_api.add_diff_option_comment("split-any-any", "split_any_any = true by default"); + table_api.append_option("split_any_any", split_set); + } + } + else + { + if ( !split_set ) + table_api.add_diff_option_comment("split-any-any", "split_any_any = true by default"); + + retval &= table_api.add_option("split_any_any", split_set); } return retval;