summaryrefslogtreecommitdiffstats
path: root/etc/inc
diff options
context:
space:
mode:
authorScott Ullrich <sullrich@pfsense.org>2009-08-24 20:54:55 -0400
committerScott Ullrich <sullrich@pfsense.org>2009-08-24 20:54:55 -0400
commit86fa7e0e9ce07e06f45090c2fc5a179dfef79c9b (patch)
tree96f747f4bba9722bff468d24af6883bf29013679 /etc/inc
parent0b2c35ef67aecdd106bc3deccbb76a49dd44d75a (diff)
downloadpfsense-86fa7e0e9ce07e06f45090c2fc5a179dfef79c9b.zip
pfsense-86fa7e0e9ce07e06f45090c2fc5a179dfef79c9b.tar.gz
Use array_splice() to unset items that should not be sync'd (nosync) Resolves #38
Diffstat (limited to 'etc/inc')
-rw-r--r--etc/inc/filter.inc46
1 files changed, 30 insertions, 16 deletions
diff --git a/etc/inc/filter.inc b/etc/inc/filter.inc
index 3953825..19e288b 100644
--- a/etc/inc/filter.inc
+++ b/etc/inc/filter.inc
@@ -3131,39 +3131,53 @@ function carp_sync_xml($url, $password, $sections, $port = 80, $method = 'pfsens
/* strip out nosync items */
for ($x = 0; $x < count($config_copy['nat']['advancedoutbound']['rule']); $x++) {
- $config_copy['nat']['advancedoutbound']['rule'][$x]['descr'] = remove_special_characters($config_copy['nat']['advancedoutbound']['rule'][$x]['descr']);
- if (isset ($config_copy['nat']['advancedoutbound']['rule'][$x]['nosync']))
- unset ($config_copy['nat']['advancedoutbound']['rule'][$x]);
+ $config_copy['nat']['advancedoutbound']['rule'][$x]['descr'] = remove_special_characters($config_copy['nat']['advancedoutbound']['rule'][$x]['descr']);
+ if (isset ($config_copy['nat']['advancedoutbound']['rule'][$x]['nosync'])) {
+ array_splice($config_copy['nat']['advancedoutbound']['rule'],$x,1);
+ $x--;
+ }
}
for ($x = 0; $x < count($config_copy['nat']['rule']); $x++) {
$config_copy['nat']['rule'][$x]['descr'] = remove_special_characters($config_copy['nat']['rule'][$x]['descr']);
- if (isset ($config_copy['nat']['rule'][$x]['nosync']))
- unset ($config_copy['nat']['rule'][$x]);
+ if (isset ($config_copy['nat']['rule'][$x]['nosync'])) {
+ array_splice($config_copy['nat']['rule'],$x,1);
+ $x--;
+ }
}
for ($x = 0; $x < count($config_copy['filter']['rule']); $x++) {
- $config_copy['filter']['rule'][$x]['descr'] = remove_special_characters($config_copy['filter']['rule'][$x]['descr']);
- if (isset ($config_copy['filter']['rule'][$x]['nosync']))
- unset ($config_copy['filter']['rule'][$x]);
+ $config_copy['filter']['rule'][$x]['descr'] = remove_special_characters($config_copy['filter']['rule'][$x]['descr']);
+ if (isset ($config_copy['filter']['rule'][$x]['nosync'])) {
+ array_splice($config_copy['filter']['rule'],$x,1);
+ $x--;
+ }
}
for ($x = 0; $x < count($config_copy['aliases']['alias']); $x++) {
$config_copy['aliases']['alias'][$x]['descr'] = remove_special_characters($config_copy['aliases']['alias'][$x]['descr']);
- if (isset ($config_copy['aliases']['alias'][$x]['nosync']))
- unset ($config_copy['aliases']['alias'][$x]);
+ if (isset ($config_copy['aliases']['alias'][$x]['nosync'])) {
+ array_splice($config_copy['aliases']['alias'],$x,1);
+ $x--;
+ }
}
for ($x = 0; $x < count($config_copy['dnsmasq']['hosts']); $x++) {
$config_copy['dnsmasq']['hosts'][$x]['descr'] = remove_special_characters($config_copy['dnsmasq']['hosts'][$x]['descr']);
- if (isset ($config_copy['dnsmasq']['hosts'][$x]['nosync']))
- unset ($config_copy['dnsmasq']['hosts'][$x]);
+ if (isset ($config_copy['dnsmasq']['hosts'][$x]['nosync'])) {
+ array_splice($config_copy['dnsmasq']['hosts'],$x,1);
+ $x--;
+ }
}
for ($x = 0; $x < count($config_copy['virtualip']['vip']); $x++) {
$config_copy['virtualip']['vip'][$x]['descr'] = remove_special_characters($config_copy['virtualip']['vip'][$x]['descr']);
- if (isset ($config_copy['virtualip']['vip'][$x]['nosync']) or $config_copy['virtualip']['vip'][$x]['mode'] == "proxyarp")
- unset ($config_copy['virtualip']['vip'][$x]);
+ if (isset ($config_copy['virtualip']['vip'][$x]['nosync']) or $config_copy['virtualip']['vip'][$x]['mode'] == "proxyarp") {
+ array_splice($config_copy['virtualip']['vip'],$x,1);
+ $x--;
+ }
}
for ($x = 0; $x < count($config_copy['ipsec']['tunnel']); $x++) {
$config_copy['ipsec']['tunnel'][$x]['descr'] = remove_special_characters($config_copy['ipsec']['tunnel'][$x]['descr']);
- if (isset ($config_copy['ipsec']['tunnel'][$x]['nosync']))
- unset ($config_copy['ipsec']['tunnel'][$x]);
+ if (isset ($config_copy['ipsec']['tunnel'][$x]['nosync'])) {
+ array_splice($config_copy['ipsec']['tunnel'],$x,1);
+ $x--;
+ }
}
foreach($sections as $section) {
OpenPOWER on IntegriCloud