]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
rule-reload: fix possible hangup with SIGUSR2
authorAndreas Herz <andi@geekosphere.org>
Wed, 13 Dec 2017 23:59:30 +0000 (00:59 +0100)
committerVictor Julien <victor@inliniac.net>
Tue, 30 Jan 2018 09:32:16 +0000 (10:32 +0100)
In some cases the rule reload could hang. The pending USR2 signals will
be recognized even with the <2 check. Also the SCLogWarning shouldn't be
used in the handler (see Warning about SCLog* API above in the code).

src/suricata.c

index 291eb13ffa96e78499c44f26ec98e14d6a3c023b..9bf78dde5324f39973c4a59601d85c812a8e593f 100644 (file)
@@ -285,11 +285,8 @@ static void SignalHandlerSigterm(/*@unused@*/ int sig)
  */
 static void SignalHandlerSigusr2(int sig)
 {
-    if (sigusr2_count < 16) {
+    if (sigusr2_count < 2)
         sigusr2_count++;
-    } else {
-        SCLogWarning(SC_ERR_LIVE_RULE_SWAP, "Too many USR2 signals pending, ignoring new ones!");
-    }
 }
 
 /**