Fix IP checking function calls in net module
authorJamie Cameron <jcameron@webmin.com>
Sun, 31 Oct 2010 04:36:11 +0000 (21:36 -0700)
committerJamie Cameron <jcameron@webmin.com>
Sun, 31 Oct 2010 04:36:11 +0000 (21:36 -0700)
net/cygwin-lib.pl
net/debian-linux-lib.pl
net/open-linux-lib.pl
net/redhat-linux-lib.pl
net/solaris-lib.pl
net/suse-linux-9.0-lib.pl
net/suse-linux-9.2-ALL-lib.pl
net/suse-linux-lib.pl
net/united-linux-lib.pl
net/unixware-lib.pl

index bf508e5..ae04797 100755 (executable)
@@ -250,8 +250,7 @@ return $_[0] =~ /^(dhcp|netmask)$/;
 # Is some address valid for a bootup interface
 sub valid_boot_address
 {
-return 1 if (&check_ipaddress($_[0]));
-return gethostbyname($_[0]) ? 1 : 0;
+return &to_ipaddress($_[0]) ? 1 : 0;
 }
 
 # get_dns_config()
index 04c429b..370d901 100755 (executable)
@@ -521,9 +521,10 @@ for($i=0; defined($dev = $in{"dev_$i"}); $i++) {
        local $netmask = $in{"netmask_$i"};
        local $gw = $in{"gw_$i"};
        $dev =~ /^\S+$/ || &error(&text('routes_edevice', $dev));
-       gethostbyname($net) || &error(&text('routes_enet', $net));
-               &check_ipaddress_any($netmask) || &error(&text('routes_emask', $netmask));
-       gethostbyname($gw) || &error(&text('routes_egateway', $gw));
+       &to_ipaddress($net) || &error(&text('routes_enet', $net));
+       &check_ipaddress_any($netmask) ||
+               &error(&text('routes_emask', $netmask));
+       &to_ipaddress($gw) || &error(&text('routes_egateway', $gw));
        local $prefix = &mask_to_prefix($netmask);
        push(@{$st{$dev}}, [ "up", "ip route add $net/$prefix via $gw" ]);
        }
@@ -533,9 +534,11 @@ for($i=0; defined($dev = $in{"ldev_$i"}); $i++) {
        local $netmask = $in{"lnetmask_$i"};
        next if (!$dev && !$net);
        $dev =~ /^\S+$/ || &error(&text('routes_edevice', $dev));
-       gethostbyname($net) || $net =~ /^(\S+)\/(\d+)$/ && gethostbyname($1) ||
+       &to_ipaddress($net) ||
+           $net =~ /^(\S+)\/(\d+)$/ && &to_ipaddress("$1") ||
                &error(&text('routes_enet', $net));
-               &check_ipaddress_any($netmask) || &error(&text('routes_emask', $netmask));
+       &check_ipaddress_any($netmask) ||
+               &error(&text('routes_emask', $netmask));
        local $prefix = &mask_to_prefix($netmask);
        push(@{$hr{$dev}}, [ "up", "ip route add $net/$prefix dev $dev" ]);
        }
index f7daadc..000f614 100755 (executable)
@@ -194,7 +194,7 @@ else { delete($conf{'IPFORWARDING'}); }
 local %ifcs = map { $_->{'fullname'}, 1 } &all_interfaces();
 
 if (!$in{'gateway_def'}) {
-       gethostbyname($in{'gateway'}) ||
+       &to_ipaddress($in{'gateway'}) ||
                &error(&text('routes_edefault', $in{'gateway'}));
        $ifcs{$in{'gatewaydev'}} ||
                &error(&text('routes_edevice', $in{'gatewaydev'}));
index 3cae8f5..0898589 100755 (executable)
@@ -428,7 +428,7 @@ local (%conf, @st, %sysctl, %st, @boot);
 if (!$supports_dev_gateway) {
        # Just update a single file
        if ($in{'gateway_def'}) { delete($conf{'GATEWAY'}); }
-       elsif (!gethostbyname($in{'gateway'})) {
+       elsif (!&to_ipaddress($in{'gateway'})) {
                &error(&text('routes_edefault', $in{'gateway'}));
                }
        else { $conf{'GATEWAY'} = $in{'gateway'}; }
@@ -483,9 +483,9 @@ for($i=0; defined($dev = $in{"dev_$i"}); $i++) {
        next if (!$dev);
        $net = $in{"net_$i"}; $netmask = $in{"netmask_$i"}; $gw = $in{"gw_$i"};
        $dev =~ /^\S+$/ || &error(&text('routes_edevice', $dev));
-       gethostbyname($net) || &error(&text('routes_enet', $net));
+       &to_ipaddress($net) || &error(&text('routes_enet', $net));
        &check_ipaddress($netmask) || &error(&text('routes_emask', $netmask));
-       gethostbyname($gw) || &error(&text('routes_egateway', $gw));
+       &to_ipaddress($gw) || &error(&text('routes_egateway', $gw));
        if ($netmask eq "255.255.255.255") {
                push(@st, "$dev host $net gw $gw\n");
                }
@@ -498,7 +498,8 @@ for($i=0; defined($dev = $in{"ldev_$i"}); $i++) {
        $net = $in{"lnet_$i"}; $netmask = $in{"lnetmask_$i"};
        next if (!$dev && !$net);
        $dev =~ /^\S+$/ || &error(&text('routes_edevice', $dev));
-       gethostbyname($net) || $net =~ /^(\S+)\/(\d+)$/ && gethostbyname($1) ||
+       &to_ipaddress($net) ||
+           $net =~ /^(\S+)\/(\d+)$/ && &to_ipaddress("$1") ||
                &error(&text('routes_enet', $net));
        &check_ipaddress($netmask) || &error(&text('routes_emask', $netmask));
        if ($netmask eq "255.255.255.255") {
index 7834789..8de38af 100755 (executable)
@@ -186,8 +186,7 @@ return $_[0] eq "dhcp";
 # Is some address valid for a bootup interface
 sub valid_boot_address
 {
-return 1 if (&check_ipaddress($_[0]));
-return gethostbyname($_[0]) ? 1 : 0;
+return &to_ipaddress($_[0]) ? 1 : 0;
 }
 
 # get_dns_config()
@@ -386,8 +385,8 @@ print &ui_table_row($text{'routes_forward'},
 sub parse_routing
 {
 local @defrt = split(/\s+/, $in{'defrt'});
-foreach $d (@defrt) {
-       gethostbyname($d) || &error(&text('routes_edefault', $d));
+foreach my $d (@defrt) {
+       &to_ipaddress($d) || &error(&text('routes_edefault', $d));
        }
 &lock_file("/etc/defaultrouter");
 if (@defrt) {
index 74b353a..d866a2c 100755 (executable)
@@ -245,7 +245,7 @@ sub parse_routing
 # Parse route inputs
 local (@routes, $r, $i);
 if (!$in{'gateway_def'}) {
-       gethostbyname($in{'gateway'}) ||
+       &to_ipaddress($in{'gateway'}) ||
                &error(&text('routes_edefault', $in{'gateway'}));
        local @def = ( "default", $in{'gateway'}, undef, undef );
        if (!$in{'gatewaydev_def'}) {
index 6d0af44..509c885 100755 (executable)
@@ -332,7 +332,7 @@ sub parse_routing
 # Parse route inputs
 local (@routes, $r, $i);
 if (!$in{'gateway_def'}) {
-       gethostbyname($in{'gateway'}) ||
+       &to_ipaddress($in{'gateway'}) ||
                &error(&text('routes_edefault', $in{'gateway'}));
        local @def = ( "default", $in{'gateway'}, undef, undef );
        if (!$in{'gatewaydev_def'}) {
index 37cf897..e4d9ea3 100755 (executable)
@@ -267,7 +267,7 @@ local $route = "# Generated by Webmin\n";
 for($i=0; defined($dev = $in{"lr_dev_$i"}); $i++) {
        $net = $in{"lr_net_$i"}; $mask = $in{"lr_mask_$i"};
        next if (!$dev && !$net && !$mask);
-       gethostbyname($net) ||
+       &to_ipaddress($net) ||
                &error(&text('routes_enet', $net));
        &check_ipaddress($mask) ||
                &error(&text('routes_emask', $mask));
@@ -276,16 +276,16 @@ for($i=0; defined($dev = $in{"lr_dev_$i"}); $i++) {
 for($i=0; defined($gw = $in{"sr_gw_$i"}); $i++) {
        $net = $in{"sr_net_$i"}; $mask = $in{"sr_mask_$i"};
        next if (!$gw && !$net && !$mask);
-       gethostbyname($gw) ||
+       &to_ipaddress($gw) ||
                &error(&text('routes_egateway', $gw));
-       gethostbyname($net) ||
+       &to_ipaddress($net) ||
                &error(&text('routes_enet', $net));
        &check_ipaddress($mask) ||
                &error(&text('routes_emask', $mask));
        $route .= "$net\t\t$gw\t\t$mask\n";
        }
 if (!$in{'default_def'}) {
-       gethostbyname($in{'default'}) ||
+       &to_ipaddress($in{'default'}) ||
                &error(&text('routes_edefault', $in{'default'}));
        $route .= "default\t\t$in{'default'}\n";
        }
index c2aee5e..5454691 100755 (executable)
@@ -210,7 +210,7 @@ sub parse_routing
 # Parse route inputs
 local (@routes, $r, $i);
 if (!$in{'gateway_def'}) {
-       gethostbyname($in{'gateway'}) ||
+       &to_ipaddress($in{'gateway'}) ||
                &error(&text('routes_edefault', $in{'gateway'}));
        local @def = ( "default", $in{'gateway'}, undef, undef );
        if (!$in{'gatewaydev_def'}) {
index 1a9c71e..1ef1d0d 100755 (executable)
@@ -194,8 +194,7 @@ return $_[0] eq "dhcp";
 # Is some address valid for a bootup interface
 sub valid_boot_address
 {
-return 1 if (&check_ipaddress($_[0]));
-return gethostbyname($_[0]) ? 1 : 0;
+return &to_ipaddress($_[0]) ? 1 : 0;
 }
 
 # get_dns_config()
@@ -370,8 +369,8 @@ print &ui_table_row($text{'routes_forward'},
 sub parse_routing
 {
 local @defrt = split(/\s+/, $in{'defrt'});
-foreach $d (@defrt) {
-       gethostbyname($d) || &error(&text('routes_edefault', $d));
+foreach my $d (@defrt) {
+       &to_ipaddress($d) || &error(&text('routes_edefault', $d));
        }
 &lock_file("/etc/defaultrouter");
 if (@defrt) {