From: Stefan Schantl Date: Tue, 11 Sep 2018 10:00:31 +0000 (+0200) Subject: ids.cgi: Set state of used rulefile to on if it contains rules X-Git-Tag: v2.23-core131~117^2~148 X-Git-Url: http://git.ipfire.org/?p=ipfire-2.x.git;a=commitdiff_plain;h=43ab7d9c30fb24bebd716e264530d7db3e84a007 ids.cgi: Set state of used rulefile to on if it contains rules Only set the state of a used rulefile to "on" if it is present in the %idsrules hash. This happens if it contains at least one rule. This prevents from showing a rulefile in the ruleset section if, it does not exist anymore or does not contains any rules at all. Signed-off-by: Stefan Schantl --- diff --git a/html/cgi-bin/ids.cgi b/html/cgi-bin/ids.cgi index 55f45c5c83..edf67963b2 100644 --- a/html/cgi-bin/ids.cgi +++ b/html/cgi-bin/ids.cgi @@ -300,8 +300,13 @@ if(-f $idsusedrulefilesfile) { if ($line =~ /.*- (.*)/) { my $rulefile = $1; - # Add the rulefile to the %idsrules hash. - $idsrules{$rulefile}{'Rulefile'}{'State'} = "on"; + # Check if the current rulefile exists in the %idsrules hash. + # If not, the file probably does not exist anymore or contains + # no rules. + if($idsrules{$rulefile}) { + # Add the rulefile state to the %idsrules hash. + $idsrules{$rulefile}{'Rulefile'}{'State'} = "on"; + } } } }