diff --git a/doc/userguide/firewall/firewall-stats.rst b/doc/userguide/firewall/firewall-stats.rst index f681331df2..d8561e34dc 100644 --- a/doc/userguide/firewall/firewall-stats.rst +++ b/doc/userguide/firewall/firewall-stats.rst @@ -29,6 +29,9 @@ If a drop was caused by the firewall, the corresponding counter will be incremen Discarded alerts ================ -In Firewall mode, alerts generated *after* a drop are discarded. +When the alert queue is full for a firewall rule match, the alert is discarded. These are reported with the counter ``stats.firewall.discarded_alerts``. Note that the drop may be caused by non-firewall rules. + +The rule's primary action as well as other secondary actions will be applied to +the traffic as normal. diff --git a/etc/schema.json b/etc/schema.json index 3614605797..321d39d4ff 100644 --- a/etc/schema.json +++ b/etc/schema.json @@ -7387,7 +7387,7 @@ }, "discarded_alerts": { "type": "integer", - "description": "Count of alerts discarded due to a drop while in firewall mode" + "description": "Count of alerts discarded due max alerts reached" }, "drop_reason": { "type": "object", diff --git a/src/detect-engine-alert.c b/src/detect-engine-alert.c index 90927d1dc5..9beedf93ea 100644 --- a/src/detect-engine-alert.c +++ b/src/detect-engine-alert.c @@ -633,8 +633,7 @@ static inline void PacketAlertFinalizeProcessQueue( } if (dropped) { - SCLogDebug("Skippig firewall signature after a drop."); - p->alerts.firewall_discarded++; + SCLogDebug("Skipping firewall signature after a drop."); continue; }