-sub ruleset_generate_rule_old {
- my ($ruleset, $chain, $ipversion, $rule, $actions, $goto, $cluster_conf, $fw_conf) = @_;
-
- my $rules;
-
- if ($rule->{macro}) {
- $rules = &$apply_macro($rule->{macro}, $rule, 0, $ipversion);
- } else {
- $rules = [ $rule ];
- }
-
- # update all or nothing
-
- # fixme: lots of temporary ugliness
- my @mstrs = ();
- my @astrs = ();
- my @logging = ();
- my @logmsg = ();
- foreach my $tmp (@$rules) {
- my $m = ruleset_generate_match($ruleset, $chain, $ipversion, $tmp, $actions, $goto, $cluster_conf, $fw_conf);
- my $a = ruleset_generate_action($ruleset, $chain, $ipversion, $tmp, $actions, $goto, $cluster_conf, $fw_conf);
- if (defined $m or defined $a) {
- push @mstrs, defined($m) ? $m : "";
- push @astrs, defined($a) ? $a : "";
- push @logging, $tmp->{log};
- push @logmsg, $tmp->{logmsg};
- }
- }
-
- for my $i (0 .. $#mstrs) {
- ruleset_addrule($ruleset, $chain, $mstrs[$i], $astrs[$i], $logging[$i], $logmsg[$i]);
- }
-}
-