X-Git-Url: http://git.ipfire.org/?p=people%2Fteissler%2Fipfire-2.x.git;a=blobdiff_plain;f=html%2Fcgi-bin%2Ffwhosts.cgi;h=444b3660eb73841497ddd7bc73c965a60c57f4d2;hp=a0bb21fb8efad40f82637703937413441611fa60;hb=fb0ce57589a8ba724d3c446b612181f6d7f3b8c5;hpb=f833ef4660862fce522799582957a64b2159ea72
diff --git a/html/cgi-bin/fwhosts.cgi b/html/cgi-bin/fwhosts.cgi
index a0bb21fb8..444b3660e 100755
--- a/html/cgi-bin/fwhosts.cgi
+++ b/html/cgi-bin/fwhosts.cgi
@@ -26,6 +26,7 @@ use strict;
# enable only the following on debugging purpose
use warnings;
+use Sort::Naturally;
use CGI::Carp 'fatalsToBrowser';
no warnings 'uninitialized';
require '/var/ipfire/general-functions.pl';
@@ -668,7 +669,7 @@ if ($fwhostsettings{'ACTION'} eq 'savegrp')
}elsif($updcounter eq 'host'){
foreach my $key (keys %customhost) {
if ($customhost{$key}[0] eq $fwhostsettings{'CUST_SRC_HOST'}){
- $customhost{$key}[4]=$customhost{$key}[3]+1;
+ $customhost{$key}[4]=$customhost{$key}[4]+1;
}
}
&General::writehasharray("$confighost", \%customhost);
@@ -722,6 +723,10 @@ if ($fwhostsettings{'ACTION'} eq 'saveservicegrp')
&General::readhasharray("$configsrvgrp", \%customservicegrp );
&General::readhasharray("$configsrv", \%customservice );
$errormessage=&checkservicegroup;
+ #check remark
+ if ($fwhostsettings{'SRVGRP_REMARK'} ne '' && !&validremark($fwhostsettings{'SRVGRP_REMARK'})){
+ $errormessage=$Lang::tr{'fwhost err remark'};
+ }
if (!$errormessage){
#on first save, we have to enter a dummy value
if ($fwhostsettings{'CUST_SRV'} eq ''){
@@ -863,7 +868,7 @@ if ($fwhostsettings{'ACTION'} eq 'deletegrphost')
&General::readhasharray("$confignet", \%customnetwork);
foreach my $key1 (keys %customnetwork){
if ($customnetwork{$key1}[0] eq $customgrp{$key}[2]){
- $customnetwork{$key1}[3] = $customnetwork{$key1}[3]-1;
+ $customnetwork{$key1}[4] = $customnetwork{$key1}[4]-1;
last;
}
}
@@ -966,7 +971,6 @@ if ($fwhostsettings{'ACTION'} eq 'delgrpservice')
&General::writehasharray("$configsrvgrp", \%customservicegrp);
&rules;
if ($fwhostsettings{'updatesrvgrp'} eq 'on'){
- #$fwhostsettings{'updatesrvgrp'}='on';
$fwhostsettings{'SRVGRP_NAME'}=$grpname;
$fwhostsettings{'SRVGRP_REMARK'}=$grpremark;
}
@@ -1004,17 +1008,14 @@ if ($fwhostsettings{'ACTION'} eq 'changegrpremark')
if ($fwhostsettings{'oldrem'} ne $fwhostsettings{'newrem'} && (&validremark($fwhostsettings{'newrem'}) || $fwhostsettings{'newrem'} eq '')){
foreach my $key (sort keys %customgrp)
{
- #$customgrp{$key}[1]=~ s/\|/,/g;
if($customgrp{$key}[0] eq $fwhostsettings{'grp'} && $customgrp{$key}[1] eq $fwhostsettings{'oldrem'})
{
- #$fwhostsettings{'newrem'}=~ s/,/\|/g;
$customgrp{$key}[1]='';
$customgrp{$key}[1]=$fwhostsettings{'newrem'};
}
}
&General::writehasharray("$configgrp", \%customgrp);
$fwhostsettings{'update'}='on';
- #$fwhostsettings{'newrem'}=~ s/\|/,/g;
$fwhostsettings{'remark'}=$fwhostsettings{'newrem'};
}else{
$errormessage=$Lang::tr{'fwhost err remark'};
@@ -1032,17 +1033,14 @@ if ($fwhostsettings{'ACTION'} eq 'changesrvgrpremark')
if ($fwhostsettings{'oldsrvrem'} ne $fwhostsettings{'newsrvrem'} && (&validremark($fwhostsettings{'newsrvrem'}) || $fwhostsettings{'newsrvrem'} eq '')){
foreach my $key (sort keys %customservicegrp)
{
- #$customservicegrp{$key}[1]=~ s/\|/,/g;
if($customservicegrp{$key}[0] eq $fwhostsettings{'srvgrp'} && $customservicegrp{$key}[1] eq $fwhostsettings{'oldsrvrem'})
{
- #$fwhostsettings{'newsrvrem'}=~ s/,/|/g;
$customservicegrp{$key}[1]='';
$customservicegrp{$key}[1]=$fwhostsettings{'newsrvrem'};
}
}
&General::writehasharray("$configsrvgrp", \%customservicegrp);
$fwhostsettings{'updatesrvgrp'}='on';
- #$fwhostsettings{'newsrvrem'}=~ s/\|/,/g;
$fwhostsettings{'SRVGRP_REMARK'}=$fwhostsettings{'newsrvrem'};
}else{
$errormessage=$Lang::tr{'fwhost err remark'};
@@ -1063,7 +1061,7 @@ if($fwhostsettings{'ACTION'} eq '')
sub showmenu
{
if (-f "${General::swroot}/forward/reread"){
- print "
";
+ print "
";
}
&Header::openbox('100%', 'left',$Lang::tr{'fwhost menu'});
print<";
if (! -z $confignet){
print" | $Lang::tr{'fwhost cust net'} | |
";
}
if (! -z $confighost){
print" | $Lang::tr{'fwhost cust addr'} | |
";
@@ -1199,14 +1197,14 @@ END
#OVPN networks
if (! -z $configccdnet){
print" | $Lang::tr{'fwhost ccdnet'} | | ";
}
#OVPN clients
- foreach my $key (sort { uc($ccdhost{$a}[0]) cmp uc($ccdhost{$b}[0]) } keys %ccdhost)
+ foreach my $key (sort { ncmp($ccdhost{$a}[0],$ccdhost{$b}[0]) } keys %ccdhost)
{
if ($ccdhost{$key}[33] ne ''){
print" | $Lang::tr{'fwhost ccdhost'} | | ";}
#OVPN n2n networks
- foreach my $key (sort { uc($ccdhost{$a}[0]) cmp uc($ccdhost{$b}[0]) } keys %ccdhost) {
+ foreach my $key (sort { ncmp($ccdhost{$a}[1],$ccdhost{$b}[1]) } keys %ccdhost) {
if($ccdhost{$key}[3] eq 'net'){
print" | $Lang::tr{'fwhost ovpn_n2n'} | | ";}
#IPsec networks
- foreach my $key (sort { uc($ipsecconf{$a}[0]) cmp uc($ipsecconf{$b}[0]) } keys %ipsecconf) {
+ foreach my $key (sort { ncmp($ipsecconf{$a}[0],$ipsecconf{$b}[0]) } keys %ipsecconf) {
if ($ipsecconf{$key}[3] eq 'net'){
print" | $Lang::tr{'fwhost ipsec net'} | |