]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blobdiff - html/cgi-bin/routing.cgi
extrahd.cgi: Use new system methods
[people/pmueller/ipfire-2.x.git] / html / cgi-bin / routing.cgi
index 7636d1ec59d45fa8fe2804bcb68231ec454e8d98..d2d3bdd26b21b7f57a137321bf03fc753d815b5a 100644 (file)
@@ -40,7 +40,7 @@ our $datafile = "${General::swroot}/main/routing";            #(our: used in subroutine)
 my %color = ();
 my %mainsettings = ();
 &General::readhash("${General::swroot}/main/settings", \%mainsettings);
-&General::readhash("/srv/web/ipfire/html/themes/".$mainsettings{'THEME'}."/include/colors.txt", \%color);
+&General::readhash("/srv/web/ipfire/html/themes/ipfire/include/colors.txt", \%color);
 
 our %settings = ();
 
@@ -137,6 +137,9 @@ if ($settings{'ACTION'} eq $Lang::tr{'add'}) {
        $errormessage = $Lang::tr{'invalid ip'}. " - ".$Lang::tr{'gateway ip'};
        }
 
+       # Escape input in REMARK field
+       $settings{'REMARK'} = &Header::escape($settings{'REMARK'});
+
        #set networkip if not already correctly defined
        my($ip,$cidr) = split(/\//,$settings{'IP'});
        my $netip=&General::getnetworkip($ip,$cidr);
@@ -149,12 +152,12 @@ if ($settings{'ACTION'} eq $Lang::tr{'add'}) {
                $temp[2] ='' unless defined $temp[2]; # not always populated
                $temp[3] ='' unless defined $temp[2]; # not always populated
                #Same ip already used?
-               if($temp[1] eq $settings{'IP'}){
+               if($temp[1] eq $settings{'IP'} && $settings{'KEY1'} eq ''){
                        $errormessage = $Lang::tr{'ccd err irouteexist'};
                        last;
                }
                #Is the network part of an internal network?
-               $errormessage .= &General::check_net_internal($settings{'IP'});
+               $errormessage .= &General::check_net_internal_exact($settings{'IP'});
                last;
        }