X-Git-Url: http://git.ipfire.org/?p=people%2Fteissler%2Fipfire-2.x.git;a=blobdiff_plain;f=html%2Fcgi-bin%2Foptionsfw.cgi;h=9563aabc8cfc835d1a1373e99633afe4cb97a749;hp=898ee286fe65c677b2ddbebed6bd674dd1582171;hb=ac14b325e03276f9e17e334b03a3d3129903bac7;hpb=d998784149c62299aa7c417b7a7919c3d9abdcf7 diff --git a/html/cgi-bin/optionsfw.cgi b/html/cgi-bin/optionsfw.cgi index 898ee286f..9563aabc8 100644 --- a/html/cgi-bin/optionsfw.cgi +++ b/html/cgi-bin/optionsfw.cgi @@ -11,7 +11,6 @@ # $Id: optionsfw.cgi,v 1.1.2.10 2005/10/03 00:34:10 gespinasse Exp $ # # - # enable only the following on debugging purpose #use warnings; #use CGI::Carp 'fatalsToBrowser'; @@ -22,46 +21,49 @@ require "${General::swroot}/header.pl"; my %checked =(); # Checkbox manipulations - -# File used -my $filename = "${General::swroot}/optionsfw/settings"; - our %settings=(); -$settings{'DISABLEPING'} = 'NO'; -$settings{'DROPNEWNOTSYN'} = 'on'; -$settings{'DROPINPUT'} = 'on'; -$settings{'DROPFORWARD'} = 'on'; -$settings{'DROPOUTGOING'} = 'on'; -$settings{'DROPPORTSCAN'} = 'on'; -$settings{'DROPWIRELESSINPUT'} = 'on'; -$settings{'DROPWIRELESSFORWARD'} = 'on'; -$settings{'SHOWCOLORS'} = 'off'; -$settings{'SHOWREMARK'} = 'on'; -$settings{'SHOWTABLES'} = 'on'; -$settings{'SHOWDROPDOWN'} = 'off'; +my %fwdfwsettings=(); +my %configfwdfw=(); +my %configoutgoingfw=(); +my $configfwdfw = "${General::swroot}/firewall/config"; +my $configoutgoing = "${General::swroot}/firewall/outgoing"; my $errormessage = ''; my $warnmessage = ''; +my $filename = "${General::swroot}/optionsfw/settings"; +&General::readhash("${General::swroot}/firewall/settings", \%fwdfwsettings); &Header::showhttpheaders(); #Get GUI values &Header::getcgihash(\%settings); - if ($settings{'ACTION'} eq $Lang::tr{'save'}) { - - $errormessage = $Lang::tr{'new optionsfw later'}; - delete $settings{'__CGI__'}; - delete $settings{'x'}; - delete $settings{'y'}; - &General::writehash($filename, \%settings); # Save good settings - }else { - &General::readhash($filename, \%settings); # Get saved settings and reset to good if needed + if ($settings{'defpol'} ne '1'){ + $errormessage .= $Lang::tr{'new optionsfw later'}; + &General::writehash($filename, \%settings); # Save good settings + system("/usr/local/bin/firewallctrl"); + }else{ + if ($settings{'POLICY'} ne ''){ + $fwdfwsettings{'POLICY'} = $settings{'POLICY'}; + } + if ($settings{'POLICY1'} ne ''){ + $fwdfwsettings{'POLICY1'} = $settings{'POLICY1'}; + } + my $MODE = $fwdfwsettings{'POLICY'}; + my $MODE1 = $fwdfwsettings{'POLICY1'}; + %fwdfwsettings = (); + $fwdfwsettings{'POLICY'} = "$MODE"; + $fwdfwsettings{'POLICY1'} = "$MODE1"; + &General::writehash("${General::swroot}/firewall/settings", \%fwdfwsettings); + &General::readhash("${General::swroot}/firewall/settings", \%fwdfwsettings); + system("/usr/local/bin/firewallctrl"); } - system("/usr/local/bin/forwardfwctrl"); + &General::readhash($filename, \%settings); # Load good settings +} + &Header::openpage($Lang::tr{'options fw'}, 1, ''); &Header::openbigbox('100%', 'left', '', $errormessage); - +&General::readhash($filename, \%settings); if ($errormessage) { &Header::openbox('100%', 'left', $Lang::tr{'warning messages'}); print "$errormessage "; @@ -109,7 +111,7 @@ $checked{'SHOWDROPDOWN'}{'on'} = ''; $checked{'SHOWDROPDOWN'}{$settings{'SHOWDROPDOWN'}} = "checked='checked'"; $selected{'FWPOLICY'}{$settings{'FWPOLICY'}}= 'selected'; $selected{'FWPOLICY1'}{$settings{'FWPOLICY1'}}= 'selected'; - +$selected{'FWPOLICY2'}{$settings{'FWPOLICY2'}}= 'selected'; &Header::openbox('100%', 'center', $Lang::tr{'options fw'}); print "
"; @@ -165,6 +167,10 @@ print <DROP +$Lang::tr{'drop action2'} +
@@ -177,5 +183,38 @@ print < + + + + + +END + print "
FORWARD
$Lang::tr{'fwdfw pol text'}

+
"; + print"

"; + print < + + + + + +END + print "
OUTGOING
$Lang::tr{'fwdfw pol text1'}

+
"; + &Header::closebox(); + &Header::closebigbox(); &Header::closepage();