diff --git a/Shorewall-perl/Shorewall/Rules.pm b/Shorewall-perl/Shorewall/Rules.pm index c8ae27790..edf482a36 100644 --- a/Shorewall-perl/Shorewall/Rules.pm +++ b/Shorewall-perl/Shorewall/Rules.pm @@ -1187,7 +1187,12 @@ sub process_rule ( $$$$$$$$$ ) { } } } else { - process_rule1 $target, $zone, $dest , $proto, $ports, $sports, $origdest, $ratelimit, $user; + my $destzone = $dest; + $destzone =~ s/:.*//; + my $policychainref = $filter_table->{"${zone}2${destzone}"}{policychain}; + if ( $policychainref->{policy} ne 'NONE' ) { + process_rule1 $target, $zone, $dest , $proto, $ports, $sports, $origdest, $ratelimit, $user; + } } } }