From: Stefan Schantl Date: Wed, 31 Mar 2021 10:01:22 +0000 (+0200) Subject: ids-functions.pl: Introduce get_used_rulesfiles() function. X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6563d44997434a442d6162571e8594dc8796c973;p=people%2Fstevee%2Fipfire-2.x.git ids-functions.pl: Introduce get_used_rulesfiles() function. This function simply returns an array which contains the used rulesfiles files. Signed-off-by: Stefan Schantl --- diff --git a/config/cfgroot/ids-functions.pl b/config/cfgroot/ids-functions.pl index ef4c74a578..519488d6a9 100644 --- a/config/cfgroot/ids-functions.pl +++ b/config/cfgroot/ids-functions.pl @@ -1476,6 +1476,48 @@ sub get_red_address() { return; } +# +## Function to get all used rulesfiles files. +# +sub get_used_rulesfiles() { + # Array to store the used rulefiles. + my @used_rulesfiles = (); + + # Check if the used rulesfile is empty. + unless (-z $used_rulesfiles_file) { + # Open the file or used rulefiles and read-in content. + open(FILE, $used_rulefiles_file) or die "Could not open $used_rulefiles_file. $!\n"; + + while () { + # Assign the current line to a nice variable. + my $line = $_; + + # Remove newlines. + chomp($line); + + # Skip comments. + next if ($line =~ /\#/); + + # Skip blank lines. + next if ($line =~ /^\s*$/); + + # Gather the rulefile. + if ($line =~ /.*- (.*)/) { + my $rulefile = $1; + + # Add the rulefile to the array of used rulesfiles. + push(@used_rulesfiles, $rulefile); + } + } + + # Close the file. + close(FILE); + } + + # Return the array of used rulesfiles. + return @used_rulesfiles; +} + # ## Function to write the lock file for locking the WUI, while ## the autoupdate script runs.