$errors->{$param} = $msg if !$errors->{$param};
};
+ my $ipversion;
+ my $set_ip_version = sub {
+ my $vers = shift;
+ if ($vers) {
+ die "detected mixed ipv4/ipv6 adresses in rule\n"
+ if $ipversion && ($vers != $ipversion);
+ $ipversion = $vers;
+ }
+ };
+
my $check_ipset_or_alias_property = sub {
my ($name, $expected_ipversion) = @_;
my $e = $fw_conf->{aliases}->{$alias} if $fw_conf;
$e = $cluster_conf->{aliases}->{$alias} if !$e && $cluster_conf;
- die "detected mixed ipv4/ipv6 adresses in rule\n"
- if $expected_ipversion && ($expected_ipversion != $e->{ipversion});
+ &$set_ip_version($e->{ipversion});
}
}
};
}
}
- my $ipversion;
- my $set_ip_version = sub {
- my $vers = shift;
- if ($vers) {
- die "detected mixed ipv4/ipv6 adresses in rule\n"
- if $ipversion && ($vers != $ipversion);
- $ipversion = $vers;
- }
- };
-
if ($rule->{proto}) {
eval { pve_fw_verify_protocol_spec($rule->{proto}); };
&$add_error('proto', $@) if $@;