= $_GET['id']) { $a_separators['sep' . $idx]['row']['0'] = 'fr' . ($seprow - 1); } } if (write_config()) { mark_subsystem_dirty('natconf'); if ($want_dirty_filter) { mark_subsystem_dirty('filter'); } } header("Location: firewall_nat.php"); exit; } } if (isset($_POST['del_x'])) { /* delete selected rules */ if (is_array($_POST['rule']) && count($_POST['rule'])) { $a_separators = &$config['nat']['separator']; foreach ($_POST['rule'] as $rulei) { $target = $rule['target']; // Check for filter rule associations if (isset($a_nat[$rulei]['associated-rule-id'])) { delete_id($a_nat[$rulei]['associated-rule-id'], $config['filter']['rule']); mark_subsystem_dirty('filter'); } unset($a_nat[$rulei]); // Update the separators for ($idx=0; isset($a_separators['sep' . $idx]); $idx++ ) { $seprow = substr($a_separators['sep' . $idx]['row']['0'], 2); if ($seprow >= $rulei) { $a_separators['sep' . $idx]['row']['0'] = 'fr' . ($seprow - 1); } } } if (write_config()) { mark_subsystem_dirty('natconf'); } header("Location: firewall_nat.php"); exit; } } else if ($_GET['act'] == "toggle") { if ($a_nat[$_GET['id']]) { if (isset($a_nat[$_GET['id']]['disabled'])) { unset($a_nat[$_GET['id']]['disabled']); } else { $a_nat[$_GET['id']]['disabled'] = true; } if (write_config(gettext("Firewall: NAT: Port forward, enable/disable NAT rule"))) { mark_subsystem_dirty('natconf'); } header("Location: firewall_nat.php"); exit; } } $pgtitle = array(gettext("Firewall"), gettext("NAT"), gettext("Port Forward")); include("head.inc"); if ($savemsg) { print_info_box($savemsg, 'success'); } if (is_subsystem_dirty('natconf')) { print_apply_box(gettext('The NAT configuration has been changed.') . '
' . gettext('You must apply the changes in order for them to take effect.')); } $tab_array = array(); $tab_array[] = array(gettext("Port Forward"), true, "firewall_nat.php"); $tab_array[] = array(gettext("1:1"), false, "firewall_nat_1to1.php"); $tab_array[] = array(gettext("Outbound"), false, "firewall_nat_out.php"); $tab_array[] = array(gettext("NPt"), false, "firewall_nat_npt.php"); display_top_tabs($tab_array); $columns_in_table = 13; ?>

' . '' . '' . '' . "\n"); } foreach ($a_nat as $natent): $alias = rule_columns_with_alias( $natent['source']['address'], pprint_port($natent['source']['port']), $natent['destination']['address'], pprint_port($natent['destination']['port']) ); /* if user does not have access to edit an interface skip on to the next record */ if (!have_natpfruleint_access($natent['interface'])) { continue; } if (isset($natent['disabled'])) { $iconfn = "pass_d"; $trclass = 'class="disabled"'; } else { $iconfn = "pass"; $trclass = ''; } ?> onClick="fr_toggle()" ondblclick="document.location='firewall_nat_edit.php?id=';"> ' . '' . '' . '' . "\n"); } } } $i++; $nnats++; endforeach; ?>
' . '' . $config['nat']['separator']['sep0']['text'] . '
" title=""> "> "> " href="firewall_nat_edit.php?id="> " href="firewall_nat_edit.php?dup="> " href="firewall_nat.php?act=del&id=">
' . '' . $rulesep['text'] . '
0) { ?>