]> git.ipfire.org Git - thirdparty/snort3.git/commitdiff
Merge pull request #1495 in SNORT/snort3 from ~CWAXMAN/snort3:snort2lua_dups to master
authorMichael Altizer (mialtize) <mialtize@cisco.com>
Fri, 25 Jan 2019 00:33:29 +0000 (19:33 -0500)
committerMichael Altizer (mialtize) <mialtize@cisco.com>
Fri, 25 Jan 2019 00:33:29 +0000 (19:33 -0500)
Squashed commit of the following:

commit 23c4095f92f55477ca250c1c458893c77ca7e739
Author: Carter Waxman <cwaxman@cisco.com>
Date:   Thu Jan 24 12:30:33 2019 -0500

    snort2lua: fixed duplication of split_any_any from config: detection

tools/snort2lua/config_states/config_detection.cc

index 0f8d1ce5dd8428894eb6f6c407326ec05ef7d494..5711a0437aecda3ff0b80639b2a52e5d6898dc60 100644 (file)
@@ -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;