diff options
-rwxr-xr-x | etc/rc.filter_synchronize | 73 |
1 files changed, 53 insertions, 20 deletions
diff --git a/etc/rc.filter_synchronize b/etc/rc.filter_synchronize index 5531392..3febef0 100755 --- a/etc/rc.filter_synchronize +++ b/etc/rc.filter_synchronize @@ -239,10 +239,16 @@ if (is_array($config['installedpackages']['carpsettings']['config'])) { } $synchronizetoip .= $carp['synchronizetoip']; - if ($carp['synchronizerules'] != "" and is_array($config['filter'])) + if ($carp['synchronizerules'] != "") { + if (!is_array($config['filter'])) + $config['filter'] = array(); $sections[] = 'filter'; - if ($carp['synchronizenat'] != "" and is_array($config['nat'])) + } + if ($carp['synchronizenat'] != "") { + if (!is_array($config['nat'])) + $config['nat'] = array(); $sections[] = 'nat'; + } if ($carp['synchronizealiases'] != "") { if (!is_array($config['aliases'])) $config['aliases'] = array(); @@ -250,44 +256,71 @@ if (is_array($config['installedpackages']['carpsettings']['config'])) { } if ($carp['synchronizedhcpd'] != "" and is_array($config['dhcpd'])) $sections[] = 'dhcpd'; - if ($carp['synchronizewol'] != "" and is_array($config['wol'])) + if ($carp['synchronizewol'] != "") { + if (!is_array($config['wol'])) + $config['wol'] = array(); $sections[] = 'wol'; - if ($carp['synchronizetrafficshaper'] != "" and is_array($config['shaper'])) + } + if ($carp['synchronizetrafficshaper'] != "" and is_array($config['shaper'])) { $sections[] = 'shaper'; - if ($carp['synchronizetrafficshaper'] != "" and is_array($config['l7shaper'])) - $sections[] = 'l7shaper'; - if ($carp['synchronizestaticroutes'] != "" and is_array($config['staticroutes'])) { + } + if ($carp['synchronizetrafficshaper'] != "") { + if (!is_array($config['l7shaper'])) + $config['l7shaper'] = array(); + $sections[] = 'l7shaper'; + } + if ($carp['synchronizestaticroutes'] != "") { + if (!is_array($config['staticroutes'])) + $config['staticroutes'] = array(); $sections[] = 'staticroutes'; + if (!is_array($config['gateways'])) + $config['gateways'] = array(); $sections[] = 'gateways'; } - if ($carp['synchronizevirtualip'] != "" and is_array($config['virtualip'])) + if ($carp['synchronizevirtualip'] != "") { + if (!is_array($config['virtualip'])) + $config['virtualip'] = array(); $sections[] = 'virtualip'; - if ($carp['synchronizelb'] != "" and is_array($config['load_balancer'])) + } + if ($carp['synchronizelb'] != "") { + if (!is_array($config['load_balancer'])) + $config['load_balancer'] = array(); $sections[] = 'load_balancer'; - if ($carp['synchronizeipsec'] != "" and is_array($config['ipsec'])) + } + if ($carp['synchronizeipsec'] != "") { + if (!is_array($config['ipsec'])) + $config['ipsec'] = array(); $sections[] = 'ipsec'; - if ($carp['synchronizeopenvpn'] != "" and is_array($config['openvpn'])) { + } + if ($carp['synchronizeopenvpn'] != "") { + if (!is_array($config['openvpn'])) + $config['openvpn'] = array(); $sections[] = 'openvpn'; + } + if ($carp['synchronizecerts'] != "" || $carp['synchronizeopenvpn'] != "") { + if (!is_array($config['cert'])) + $config['cert'] = array(); $sections[] = 'cert'; + + if (!is_array($config['ca'])) + $config['ca'] = array(); $sections[] = 'ca'; + + if (!is_array($config['crl'])) + $config['crl'] = array(); $sections[] = 'crl'; } - if ($carp['synchronizecerts'] != "") { - if (is_array($config['cert'])) - $sections[] = 'cert'; - if (is_array($config['ca'])) - $sections[] = 'ca'; - if (is_array($config['crl'])) - $sections[] = 'crl'; - } if ($carp['synchronizeusers'] != "") { $mergesections[] = 'user'; $mergesections[] = 'group'; } if ($carp['synchronizednsforwarder'] != "" and is_array($config['dnsmasq'])) $sections[] = 'dnsmasq'; - if ($carp['synchronizeschedules'] != "" and is_array($config['schedules'])) + if ($carp['synchronizeschedules'] != "") { + if (!is_array($config['schedules'])) + $config['schedules'] = array(); $sections[] = 'schedules'; + } if ($carp['synchronizecaptiveportal'] != "" and is_array($config['captiveportal'])) $sections[] = 'captiveportal'; if ($carp['synchronizecaptiveportal'] != "" and is_array($config['vouchers'])) |