From: Vitalii Tron -X (vtron - SOFTSERVE INC at Cisco) Date: Fri, 19 Sep 2025 18:31:23 +0000 (+0000) Subject: Pull request #4898: actions: fix integer underflow in ips_actions pegcount aggregation X-Git-Tag: 3.9.6.0~12 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=107d91e19e72d3ed09155ad763f9196ad19d245d;p=thirdparty%2Fsnort3.git Pull request #4898: actions: fix integer underflow in ips_actions pegcount aggregation Merge in SNORT/snort3 from ~VTRON/snort3:fix_action_counters_underflow to master Squashed commit of the following: commit 4f2076d35fb802e4abb2dc45e6f7fb2a9fbd1f70 Author: Vitalii Tron Date: Tue Sep 9 12:37:02 2025 -0400 actions: fix integer underflow in ips_actions pegcount aggregation --- diff --git a/src/actions/actions_module.cc b/src/actions/actions_module.cc index 38da6badc..d7dd035a7 100644 --- a/src/actions/actions_module.cc +++ b/src/actions/actions_module.cc @@ -127,3 +127,11 @@ const PegInfo* ActionsModule::get_pegs() const return (PegInfo*)&peg_info_array[0]; } +void ActionsModule::reset_stats() +{ + std::fill(std::begin(peg_count_array), std::end(peg_count_array), 0); + std::fill(std::begin(prev_peg_count_array), std::end(prev_peg_count_array), 0); + + Module::reset_stats(); +} + diff --git a/src/actions/actions_module.h b/src/actions/actions_module.h index c3c50c0b0..80c3a333b 100644 --- a/src/actions/actions_module.h +++ b/src/actions/actions_module.h @@ -51,6 +51,8 @@ public: bool is_aggregator() const override { return true; } + void reset_stats() override; + private: static std::map> module_peg_info_map; static std::array peg_info_array;