X-Git-Url: https://git.proxmox.com/?p=pve-firewall.git;a=blobdiff_plain;f=src%2FPVE%2FAPI2%2FFirewall%2FRules.pm;h=0054dfca60105953e1ad1f77d10930d70da38fd1;hp=46fdd56cf80404ab81934098d5e0fa5cc0739d14;hb=ddf1e07dce58c742826f89811396050e78f07e72;hpb=2ba5e893e34ce03c60d60950308edecdd034173d diff --git a/src/PVE/API2/Firewall/Rules.pm b/src/PVE/API2/Firewall/Rules.pm index 46fdd56..0054dfc 100644 --- a/src/PVE/API2/Firewall/Rules.pm +++ b/src/PVE/API2/Firewall/Rules.pm @@ -125,7 +125,6 @@ sub register_get_rule { my ($fw_conf, $rules) = $class->load_config($param); my $digest = $fw_conf->{digest}; - # fixme: check digest die "no rule at position $param->{pos}\n" if $param->{pos} >= scalar(@$rules); @@ -160,8 +159,6 @@ sub register_create_rule { my ($fw_conf, $rules) = $class->load_config($param); - my $digest = $fw_conf->{digest}; - my $rule = {}; PVE::Firewall::copy_rule_data($rule, $param); @@ -215,9 +212,8 @@ sub register_update_rule { my ($fw_conf, $rules) = $class->load_config($param); - my $digest = $fw_conf->{digest}; - # fixme: check digest - + PVE::Tools::assert_if_modified($fw_conf->{digest}, $param->{digest}); + die "no rule at position $param->{pos}\n" if $param->{pos} >= scalar(@$rules); my $rule = $rules->[$param->{pos}]; @@ -259,6 +255,8 @@ sub register_delete_rule { my $properties = $class->additional_parameters(); $properties->{pos} = $api_properties->{pos}; + + $properties->{digest} = get_standard_option('pve-config-digest'); $class->register_method({ name => 'delete_rule', @@ -276,8 +274,7 @@ sub register_delete_rule { my ($fw_conf, $rules) = $class->load_config($param); - my $digest = $fw_conf->{digest}; - # fixme: check digest + PVE::Tools::assert_if_modified($fw_conf->{digest}, $param->{digest}); die "no rule at position $param->{pos}\n" if $param->{pos} >= scalar(@$rules);