Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
return &convert_prefix2netmask($prefix);
}
+sub normalize_network($) {
+ my $network = shift;
+
+ my $address = &get_netaddress($network);
+ my $prefix = &get_prefix($network);
+
+ unless (defined $address && defined $prefix) {
+ return undef;
+ }
+
+ return "${address}/${prefix}";
+}
+
# Returns True if $address is in $network.
sub ip_address_in_network($$) {
my $address = shift;
if (&Wireguard::pool_is_in_use($Wireguard::settings{'CLIENT_POOL'})) {
# Ignore any changes if the pool is in use
} elsif (&Network::check_subnet($cgiparams{'CLIENT_POOL'})) {
- $Wireguard::settings{'CLIENT_POOL'} = $cgiparams{'CLIENT_POOL'};
+ $Wireguard::settings{'CLIENT_POOL'} = &Network::normalize_network($cgiparams{'CLIENT_POOL'});
} elsif ($cgiparams{'CLIENT_POOL'} ne '') {
push(@errormessages, $Lang::tr{'wg invalid client pool'});
}