interfaces: actually just create the OpenVPN if needed

This commit is contained in:
Franco Fichtner 2019-06-05 11:45:21 +02:00
parent 2de53c3fa6
commit 55641d204d
2 changed files with 7 additions and 6 deletions

View File

@ -2400,8 +2400,7 @@ function interface_configure($verbose = false, $interface = 'wan', $reload = fal
interfaces_vlan_configure(false, $interface_to_check);
interfaces_lagg_configure(false, $interface_to_check);
interfaces_bridge_configure(false, 0, $interface_to_check);
/* XXX weird: create interface, but maybe do not start yet */
plugins_configure('openvpn_reload', false, array($interface));
plugins_configure('openvpn_prepare', false, array($interface_to_check));
}
/* Disable Accepting router advertisements unless specifically requested */

View File

@ -35,9 +35,9 @@ function openvpn_configure()
{
return array(
'crl' => array('openvpn_refresh_crls:0'),
'openvpn_reload' => array('openvpn_configure_do:2'),
'openvpn_prepare' => array('openvpn_prepare_all'),
'openvpn_prepare' => array('openvpn_prepare:2'),
'remote' => array('openvpn_configure_do'),
'openvpn' => array('openvpn_configure_do:2'),
'vpn' => array('openvpn_configure_do:2'),
);
}
@ -1142,7 +1142,7 @@ function openvpn_fetch_csc_list()
return $result;
}
function openvpn_prepare_all($verbose = false)
function openvpn_prepare($verbose = false, $interface = null)
{
global $config;
@ -1158,7 +1158,9 @@ function openvpn_prepare_all($verbose = false)
foreach (array('server', 'client') as $mode) {
if (isset($config['openvpn']["openvpn-{$mode}"])) {
foreach ($config['openvpn']["openvpn-{$mode}"] as &$settings) {
openvpn_reconfigure($mode, $settings, true);
if (empty($interface) || $interface == "ovpn${mode[0]}{$settings['vpnid']}") {
openvpn_reconfigure($mode, $settings, true);
}
}
}
}