diff --git a/plist b/plist index f67dfb9b6..089d8fb56 100644 --- a/plist +++ b/plist @@ -692,6 +692,7 @@ /usr/local/opnsense/scripts/filter/update_tables.py /usr/local/opnsense/scripts/firmware/changelog.sh /usr/local/opnsense/scripts/firmware/check.sh +/usr/local/opnsense/scripts/firmware/connection.sh /usr/local/opnsense/scripts/firmware/health.sh /usr/local/opnsense/scripts/firmware/install.sh /usr/local/opnsense/scripts/firmware/launcher.sh diff --git a/src/opnsense/mvc/app/controllers/OPNsense/Core/Api/FirmwareController.php b/src/opnsense/mvc/app/controllers/OPNsense/Core/Api/FirmwareController.php index 1e80bfae4..5c4a960f1 100644 --- a/src/opnsense/mvc/app/controllers/OPNsense/Core/Api/FirmwareController.php +++ b/src/opnsense/mvc/app/controllers/OPNsense/Core/Api/FirmwareController.php @@ -404,6 +404,27 @@ class FirmwareController extends ApiControllerBase return $response; } + /** + * run a connection check + * @return array status + * @throws \Exception + */ + public function connectionAction() + { + $this->sessionClose(); // long running action, close session + $backend = new Backend(); + $response = array(); + + if ($this->request->isPost()) { + $response['status'] = 'ok'; + $response['msg_uuid'] = trim($backend->configdRun("firmware connection", true)); + } else { + $response['status'] = 'failure'; + } + + return $response; + } + /** * run a health check * @return array status diff --git a/src/opnsense/mvc/app/views/OPNsense/Core/firmware.volt b/src/opnsense/mvc/app/views/OPNsense/Core/firmware.volt index 90e32c5c7..6f9bcb9a2 100644 --- a/src/opnsense/mvc/app/views/OPNsense/Core/firmware.volt +++ b/src/opnsense/mvc/app/views/OPNsense/Core/firmware.volt @@ -604,6 +604,7 @@ $("#plugin_get").click(function () { audit('syncPlugins'); }); $("#plugin_set").click(function () { audit('resyncPlugins'); }); $('#audit_security').click(function () { audit('audit'); }); + $('#audit_connection').click(function () { audit('connection'); }); $('#audit_health').click(function () { audit('health'); }); $('#upgrade_maj').click(function () { $.upgrade_needs_reboot = 1; @@ -905,8 +906,9 @@ {{ lang._('Run an audit') }}