return ($nbports);
}
+# helper function for API
+sub cleanup_fw_rule {
+ my ($rule, $digest, $pos) = @_;
+
+ my $r = {};
+
+ foreach my $k (keys %$rule) {
+ next if $k eq 'nbdport';
+ next if $k eq 'nbsport';
+ my $v = $rule->{$k};
+ next if !defined($v);
+ $r->{$k} = $v;
+ $r->{digest} = $digest;
+ $r->{pos} = $pos;
+ }
+
+ return $r;
+}
+
my $bridge_firewall_enabled = 0;
sub enable_bridge_firewall {
my $res = { rules => {} };
+ my $digest = Digest::SHA->new('sha1');
+
while (defined(my $line = <$fh>)) {
+ $digest->add($line);
+
next if $line =~ m/^#/;
next if $line =~ m/^\s*$/;
push @{$res->{$section}->{$group}}, @$rules;
}
+ $res->{digest} = $digest->b64digest;
+
return $res;
}