From 1d73b3b59de355b3f34e102fabe5c5aea865abc6 Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Mon, 29 Aug 2016 07:09:35 +0200 Subject: [PATCH] plugins: follow the footsteps of plugins_syslog() and plugins_services() This looks simple enough now. Discussed with @adschellevis. --- src/etc/inc/config.lib.inc | 6 ++++++ src/etc/inc/openvpn_wizard.inc | 1 - src/www/interfaces_groups.php | 1 - src/www/interfaces_groups_edit.php | 1 - src/www/vpn_ipsec.php | 2 -- src/www/vpn_ipsec_mobile.php | 2 -- src/www/vpn_ipsec_phase1.php | 1 - src/www/vpn_openvpn_client.php | 3 --- src/www/vpn_openvpn_server.php | 2 -- 9 files changed, 6 insertions(+), 13 deletions(-) diff --git a/src/etc/inc/config.lib.inc b/src/etc/inc/config.lib.inc index 1208f2854..919582e51 100644 --- a/src/etc/inc/config.lib.inc +++ b/src/etc/inc/config.lib.inc @@ -177,9 +177,15 @@ function write_config($desc = '', $backup = true) return -1; } + if (function_exists('plugins_interfaces')) { + /* only pull plugins if plugins.inc was included before */ + plugins_interfaces(false); + } + $cnf = OPNsense\Core\Config::getInstance(); $cnf->fromArray($config); $revision_info = make_config_revision_entry($desc); + try { $cnf->save($revision_info, $backup); } catch (OPNsense\Core\ConfigException $e) { diff --git a/src/etc/inc/openvpn_wizard.inc b/src/etc/inc/openvpn_wizard.inc index 73e58e050..7409ae3db 100644 --- a/src/etc/inc/openvpn_wizard.inc +++ b/src/etc/inc/openvpn_wizard.inc @@ -732,7 +732,6 @@ function step12_submitphpaction() $config['openvpn']['openvpn-server'][] = $server; openvpn_resync('server', $server); - plugins_interfaces(false); write_config(); header("Location: vpn_openvpn_server.php"); exit; diff --git a/src/www/interfaces_groups.php b/src/www/interfaces_groups.php index 9ff3bfa16..cb717b8b2 100644 --- a/src/www/interfaces_groups.php +++ b/src/www/interfaces_groups.php @@ -53,7 +53,6 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') { } } unset($a_ifgroups[$id]); - plugins_interfaces(false); write_config(); header("Location: interfaces_groups.php"); exit; diff --git a/src/www/interfaces_groups_edit.php b/src/www/interfaces_groups_edit.php index 6e1fab074..be5888890 100644 --- a/src/www/interfaces_groups_edit.php +++ b/src/www/interfaces_groups_edit.php @@ -125,7 +125,6 @@ if ($_SERVER['REQUEST_METHOD'] === 'GET') { // add new item $a_ifgroups[] = $ifgroupentry; } - plugins_interfaces(false); write_config(); interface_group_setup($ifgroupentry); header("Location: interfaces_groups.php"); diff --git a/src/www/vpn_ipsec.php b/src/www/vpn_ipsec.php index 4af2a9c02..2a22709df 100644 --- a/src/www/vpn_ipsec.php +++ b/src/www/vpn_ipsec.php @@ -88,7 +88,6 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') { } elseif (isset($config['ipsec']['enable'])) { unset($config['ipsec']['enable']); } - plugins_interfaces(false); write_config(); ipsec_configure(); filter_configure(); @@ -118,7 +117,6 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') { unset($config['ipsec']['phase1'][$p1entrydel]); } - plugins_interfaces(false); write_config(); mark_subsystem_dirty('ipsec'); header("Location: vpn_ipsec.php"); diff --git a/src/www/vpn_ipsec_mobile.php b/src/www/vpn_ipsec_mobile.php index 550a9776b..58f9abf5c 100644 --- a/src/www/vpn_ipsec_mobile.php +++ b/src/www/vpn_ipsec_mobile.php @@ -170,10 +170,8 @@ if ($_SERVER['REQUEST_METHOD'] === 'GET') { $config['ipsec']['client'] = $client; - plugins_interfaces(false); write_config(); mark_subsystem_dirty('ipsec'); - header(url_safe('Location: vpn_ipsec_mobile.php')); exit; } diff --git a/src/www/vpn_ipsec_phase1.php b/src/www/vpn_ipsec_phase1.php index 98b8d57e2..e68a038c7 100644 --- a/src/www/vpn_ipsec_phase1.php +++ b/src/www/vpn_ipsec_phase1.php @@ -387,7 +387,6 @@ if ($_SERVER['REQUEST_METHOD'] === 'GET') { } } - plugins_interfaces(false); write_config(); mark_subsystem_dirty('ipsec'); header("Location: vpn_ipsec.php"); diff --git a/src/www/vpn_openvpn_client.php b/src/www/vpn_openvpn_client.php index 5125fccc2..d4d57bed3 100644 --- a/src/www/vpn_openvpn_client.php +++ b/src/www/vpn_openvpn_client.php @@ -135,7 +135,6 @@ if ($_SERVER['REQUEST_METHOD'] === 'GET') { if (isset($id)) { openvpn_delete('client', $a_client[$id]); unset($a_client[$id]); - plugins_interfaces(false); write_config(); } header("Location: vpn_openvpn_client.php"); @@ -148,7 +147,6 @@ if ($_SERVER['REQUEST_METHOD'] === 'GET') { unset($a_client[$rulei]); } } - plugins_interfaces(false); write_config(); } header("Location: vpn_openvpn_client.php"); @@ -339,7 +337,6 @@ if ($_SERVER['REQUEST_METHOD'] === 'GET') { } openvpn_resync('client', $client); - plugins_interfaces(false); write_config(); header("Location: vpn_openvpn_client.php"); diff --git a/src/www/vpn_openvpn_server.php b/src/www/vpn_openvpn_server.php index 6c30e4697..3ddfcacb9 100644 --- a/src/www/vpn_openvpn_server.php +++ b/src/www/vpn_openvpn_server.php @@ -139,7 +139,6 @@ if ($_SERVER['REQUEST_METHOD'] === 'GET') { if (isset($a_server[$id])) { openvpn_delete('server', $a_server[$id]); unset($a_server[$id]); - plugins_interfaces(false); write_config(); } header("Location: vpn_openvpn_server.php"); @@ -404,7 +403,6 @@ if ($_SERVER['REQUEST_METHOD'] === 'GET') { } openvpn_resync('server', $server); - plugins_interfaces(false); write_config(); openvpn_resync_csc(); // dump client specific overrides, the required set may have changed