]> git.ipfire.org Git - people/teissler/ipfire-2.x.git/blobdiff - html/cgi-bin/firewall.cgi
Merge branch 'fifteen' of ssh://git.ipfire.org/pub/git/ipfire-2.x into fifteen
[people/teissler/ipfire-2.x.git] / html / cgi-bin / firewall.cgi
index 71ca752574f56f8448ea33c5c94df6c38781d816..29b70b442c1300e9ac8a58dfc02d3939b9b38eda 100755 (executable)
@@ -158,11 +158,6 @@ print<<END;
                // dropdown menu changes.
                \$("select").change(function() {
                        var id = \$(this).attr("name");
-
-                       // When using SNAT or DNAT, check "USE NAT" Checkbox
-                       if (id === 'snat' || id === 'dnat') {
-                               \$('#USE_NAT').prop('checked', true);
-                       }
                        \$('#' + id).prop("checked", true);
                });
        });
@@ -731,7 +726,7 @@ sub checkrule
        if($fwdfwsettings{'USE_NAT'} eq 'ON'){
                #if no dest port is given in nat area, take target host port
                if($fwdfwsettings{'nat'} eq 'dnat' && $fwdfwsettings{'grp3'} eq 'TGT_PORT' && $fwdfwsettings{'dnatport'} eq ''){$fwdfwsettings{'dnatport'}=$fwdfwsettings{'TGT_PORT'};}
-               if($fwdfwsettings{'TGT_PORT'} eq ''){
+               if($fwdfwsettings{'TGT_PORT'} eq '' && $fwdfwsettings{'dnatport'} ne '' && ($fwdfwsettings{'PROT'} eq 'TCP' || $fwdfwsettings{'PROT'} eq 'UDP')){
                        $errormessage=$Lang::tr{'fwdfw dnat porterr2'};
                }
                #check if port given in nat area is a single valid port or portrange
@@ -1447,6 +1442,7 @@ sub newrule
        $checked{'TIME_SAT'}{$fwdfwsettings{'TIME_SAT'}}                = 'CHECKED';
        $checked{'TIME_SUN'}{$fwdfwsettings{'TIME_SUN'}}                = 'CHECKED';
        $checked{'USE_NAT'}{$fwdfwsettings{'USE_NAT'}}                  = 'CHECKED';
+       $checked{'nat'}{$fwdfwsettings{'nat'}}          = 'CHECKED';
        $selected{'TIME_FROM'}{$fwdfwsettings{'TIME_FROM'}}             = 'selected';
        $selected{'TIME_TO'}{$fwdfwsettings{'TIME_TO'}}                 = 'selected';
        $selected{'ipfire'}{$fwdfwsettings{$fwdfwsettings{'grp2'}}} ='selected';
@@ -1594,7 +1590,7 @@ END
                                                <td width='5%'></td>
                                                <td width='40%'>
                                                        <label>
-                                                               <input type='radio' name='nat' id='dnat' value='dnat' checked>
+                                                               <input type='radio' name='nat'  value='dnat' $checked{'nat'}{'dnat'}>
                                                                $Lang::tr{'fwdfw dnat'}
                                                        </label>
                                                </td>
@@ -1627,7 +1623,7 @@ END
                                                <td width='5%'></td>
                                                <td width='40%'>
                                                        <label>
-                                                               <input type='radio' name='nat' id='snat' value='snat' $checked{'nat'}{'snat'}>
+                                                               <input type='radio' name='nat'  value='snat' $checked{'nat'}{'snat'}>
                                                                $Lang::tr{'fwdfw snat'}
                                                        </label>
                                                </td>