mirror of
https://github.com/lucaspalomodevelop/core.git
synced 2026-03-20 03:16:12 +00:00
(ids) autogenerate cron job on enable/disable
This commit is contained in:
parent
42fb9d4851
commit
a1609d2d6b
@ -33,6 +33,8 @@ use \OPNsense\Base\Filters\QueryFilter;
|
||||
use \OPNsense\Base\ApiControllerBase;
|
||||
use \OPNsense\Core\Backend;
|
||||
use \OPNsense\IDS\IDS;
|
||||
use \OPNsense\Cron\Cron;
|
||||
use \OPNsense\Core\Config;
|
||||
|
||||
/**
|
||||
* Class ServiceController
|
||||
@ -124,6 +126,20 @@ class ServiceController extends ApiControllerBase
|
||||
$this->sessionClose();
|
||||
$mdlIDS = new IDS();
|
||||
$runStatus = $this->statusAction();
|
||||
// we should always have a cron item configured for IDS, let's create one upon first reconfigure.
|
||||
if ((string)$mdlIDS->general->UpdateCron == "") {
|
||||
$mdlCron = new Cron();
|
||||
// update cron relation ( if this doesn't break consistency)
|
||||
$mdlIDS->general->UpdateCron = $mdlCron->newDailyJob("IDS", "ids update", "ids rule updates", "0");
|
||||
|
||||
if ($mdlCron->performValidation()->count() == 0) {
|
||||
$mdlCron->serializeToConfig();
|
||||
// save data to config, do not validate because the current in memory model doesn't know about the
|
||||
// cron item just created.
|
||||
$mdlIDS->serializeToConfig($disable_validation = true);
|
||||
Config::getInstance()->save();
|
||||
}
|
||||
}
|
||||
|
||||
if ($runStatus['status'] == "running" && (string)$mdlIDS->general->enabled == 0) {
|
||||
$this->stopAction();
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user