]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
detect/analyzer: count prefilter per rule group
authorVictor Julien <victor@inliniac.net>
Mon, 8 Feb 2021 07:28:09 +0000 (08:28 +0100)
committerVictor Julien <victor@inliniac.net>
Wed, 1 Sep 2021 06:33:52 +0000 (08:33 +0200)
src/detect-engine-build.c

index a63b1fd365f4951f9d3ed7d86c8b45a70da8b923..6eb8466912bdcca834aa85309477b44edcbaa47e 100644 (file)
@@ -621,6 +621,7 @@ static int RuleMpmIsNegated(const Signature *s)
 static json_t *RulesGroupPrintSghStats(const DetectEngineCtx *de_ctx, const SigGroupHead *sgh,
         const int add_rules, const int add_mpm_stats)
 {
+    uint32_t prefilter_cnt = 0;
     uint32_t mpm_cnt = 0;
     uint32_t nonmpm_cnt = 0;
     uint32_t negmpm_cnt = 0;
@@ -683,6 +684,7 @@ static json_t *RulesGroupPrintSghStats(const DetectEngineCtx *de_ctx, const SigG
             any5_cnt++;
         }
 
+        prefilter_cnt += (s->init_data->prefilter_sm != 0);
         if (s->init_data->mpm_sm == NULL) {
             nonmpm_cnt++;
 
@@ -795,6 +797,7 @@ static json_t *RulesGroupPrintSghStats(const DetectEngineCtx *de_ctx, const SigG
     json_object_set_new(types, "non_mpm", json_integer(nonmpm_cnt));
     json_object_set_new(types, "negated_mpm", json_integer(negmpm_cnt));
     json_object_set_new(types, "payload_but_no_mpm", json_integer(payload_no_mpm_cnt));
+    json_object_set_new(types, "prefilter", json_integer(prefilter_cnt));
     json_object_set_new(types, "syn", json_integer(syn_cnt));
     json_object_set_new(types, "any5", json_integer(any5_cnt));
     json_object_set_new(stats, "types", types);