]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
rule-reload: remember pending USR2 signals
authorAndreas Herz <andi@geekosphere.org>
Sat, 23 Jul 2016 19:59:12 +0000 (21:59 +0200)
committerVictor Julien <victor@inliniac.net>
Tue, 20 Sep 2016 07:41:48 +0000 (09:41 +0200)
We did ignore additional USR2 signals while a rule-reload was running.
This changes the counter to be incremented with every additional USR2
signal so we don't ignore them anymore but it's still limited to prevent
huge overload or even overflow.

src/suricata.c

index 2bbdb3bffbce99396225bbaa6f30622e5bde8a36..f23820551a4efea17edaf96963a6200eceba4963 100644 (file)
@@ -265,7 +265,11 @@ static void SignalHandlerSigterm(/*@unused@*/ int sig)
  */
 static void SignalHandlerSigusr2(int sig)
 {
-    sigusr2_count = 1;
+    if (sigusr2_count < 16) {
+        sigusr2_count++;
+    } else {
+        SCLogWarning(SC_ERR_LIVE_RULE_SWAP, "Too many USR2 signals pending, ignoring new ones!");
+    }
 }
 
 /**