]> git.ipfire.org Git - people/stevee/ipfire-2.x.git/commitdiff
ids.cgi: Add action if a new provider is added.
authorStefan Schantl <stefan.schantl@ipfire.org>
Wed, 31 Mar 2021 11:41:28 +0000 (13:41 +0200)
committerStefan Schantl <stefan.schantl@ipfire.org>
Sun, 19 Dec 2021 12:23:00 +0000 (13:23 +0100)
Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
html/cgi-bin/ids.cgi

index 0a825425eb296bfc043dcc54372d47d859342658..a1be76b792e050b09c05fd7fa841e8319ab7b911 100644 (file)
@@ -761,6 +761,28 @@ if ($cgiparams{'RULESET'} eq $Lang::tr{'save'}) {
                # Write the changed hash to the providers settings file.
                &General::writehasharray($IDS::providers_settings_file, \%used_providers);
 
+               # Check if a new provider will be added.
+               if ($cgiparams{'PROVIDERS'} eq $Lang::tr{'add'}) {
+                       # Lock the webpage and print notice about downloading
+                       # a new ruleset.
+                       &working_notice("$Lang::tr{'ids working'}");
+
+                       # Download the ruleset.
+                       &IDS::downloadruleset($provider);
+
+                       # Extract the ruleset
+                       &IDS::extractruleset($provider);
+
+                       # Move the ruleset.
+                       &IDS::move_tmp_ruleset();
+
+                       # Cleanup temporary directory.
+                       &IDS::cleanup_tmp_directory();
+
+                       # Perform a reload of the page.
+                       &reload();
+               }
+
                # Undefine providers flag.
                undef($cgiparams{'PROVIDERS'});
        }