From f7e3d2080b044e7ecd70c20c1e9a96ea11cc529c Mon Sep 17 00:00:00 2001 From: Alexander Marx Date: Thu, 3 Jan 2013 06:15:27 +0100 Subject: [PATCH] OpenVPN CCD: Bugfix: when editing an IPsec Net, the ipcheck produces an error. --- config/cfgroot/general-functions.pl | 24 +++++++----------------- 1 file changed, 7 insertions(+), 17 deletions(-) diff --git a/config/cfgroot/general-functions.pl b/config/cfgroot/general-functions.pl index c14f9903f..d08a87a22 100644 --- a/config/cfgroot/general-functions.pl +++ b/config/cfgroot/general-functions.pl @@ -401,7 +401,6 @@ sub validipandmask sub checksubnets { - my %ccdconfhash=(); my @ccdconf=(); my $ccdname=$_[0]; @@ -410,7 +409,6 @@ sub checksubnets my ($ip,$cidr)=split(/\//,$ccdnet); $cidr=&iporsubtocidr($cidr); - #get OVPN-Subnet (dynamic range) my %ovpnconf=(); &readhash("${General::swroot}/ovpn/settings", \%ovpnconf); @@ -422,7 +420,7 @@ sub checksubnets $errormessage=$errormessage.$Lang::tr{'ccd err isovpnnet'}."
"; return $errormessage; } - + #check if we use a network-name/subnet that already exists &readhasharray("${General::swroot}/ovpn/ccd.conf", \%ccdconfhash); foreach my $key (keys %ccdconfhash) { @@ -440,31 +438,23 @@ sub checksubnets } } - #check if we use a name which is already used by ovpn - - - - #check if we use a ipsec right network which is already defined my %ipsecconf=(); &General::readhasharray("${General::swroot}/vpn/config", \%ipsecconf); foreach my $key (keys %ipsecconf){ if ($ipsecconf{$key}[11] ne ''){ - #$errormessage="DRIN!"; - #return $errormessage; - my ($ipsecip,$ipsecsub) = split (/\//, $ipsecconf{$key}[11]); $ipsecsub=&iporsubtodec($ipsecsub); - - if ( &IpInSubnet ($ip,$ipsecip,$ipsecsub) ){ - $errormessage=$Lang::tr{'ccd err isipsecnet'}." Name: $ipsecconf{$key}[2]"; - return $errormessage; + if($ipsecconf{$key}[1] ne $ccdname){ + if ( &IpInSubnet ($ip,$ipsecip,$ipsecsub) ){ + $errormessage=$Lang::tr{'ccd err isipsecnet'}." Name: $ipsecconf{$key}[2]"; + return $errormessage; + } } } } - - + #check if we use one of ipfire's networks (green,orange,blue) my %ownnet=(); &readhash("${General::swroot}/ethernet/settings", \%ownnet); -- 2.39.2