mirror of
https://github.com/webmin/webmin.git
synced 2026-05-04 22:30:33 +01:00
IPv6 network size is a number of bits, and so must only be divisble by 8
This commit is contained in:
@@ -2849,7 +2849,7 @@ for($i=2; $i<@_; $i++) {
|
||||
# Compare with an IPv6 network
|
||||
local $v6size = $2;
|
||||
local $v6addr = &canonicalize_ip6($1);
|
||||
local $bytes = $v6size / 16;
|
||||
local $bytes = $v6size / 8;
|
||||
@mo = split(/:/, $v6addr);
|
||||
local @io6 = split(/:/, &canonicalize_ip6($_[0]));
|
||||
for($j=0; $j<$bytes; $j++) {
|
||||
|
||||
@@ -29,7 +29,7 @@ access_ecidr='$1' is not a valid CIDR number
|
||||
access_eip='$1' is not a complete IP or network address
|
||||
access_eip6='$1' is not a complete IPv6 or network address
|
||||
access_ecidr6='$1' is not a valid IPv6 network size
|
||||
access_ecidr16=IPv6 network size '$1' must be divisible by 16
|
||||
access_ecidr8=IPv6 network size '$1' must be divisible by 8
|
||||
access_ehost=Failed to find IP address for '$1'
|
||||
access_eself=Your current IP address ($1) would be denied
|
||||
access_always=Resolve hostnames on every request?
|
||||
|
||||
@@ -1542,7 +1542,7 @@ for(my $i=1; $i<@_; $i++) {
|
||||
# Compare with an IPv6 network
|
||||
my $v6size = $2;
|
||||
my $v6addr = &canonicalize_ip6($1);
|
||||
my $bytes = $v6size / 16;
|
||||
my $bytes = $v6size / 8;
|
||||
my @mo = split(/:/, $v6addr);
|
||||
my @io = split(/:/, &canonicalize_ip6($_[0]));
|
||||
for(my $j=0; $j<$bytes; $j++) {
|
||||
@@ -1614,8 +1614,8 @@ elsif ($h =~ /^([a-f0-9:]+)\/(\d+)$/) {
|
||||
return &text('access_eip6', $1);
|
||||
$2 >= 0 && $2 <= 128 ||
|
||||
return &text('access_ecidr6', "$2");
|
||||
$2 % 16 == 0 ||
|
||||
return &text('access_ecidr16', "$2");
|
||||
$2 % 8 == 0 ||
|
||||
return &text('access_ecidr8', "$2");
|
||||
}
|
||||
elsif ($h =~ /^[a-f0-9:]+$/) {
|
||||
# IPv6 address
|
||||
|
||||
Reference in New Issue
Block a user