diff --git a/Shorewall/Perl/Shorewall/Rules.pm b/Shorewall/Perl/Shorewall/Rules.pm index 5793a8d5f..ca8418b93 100644 --- a/Shorewall/Perl/Shorewall/Rules.pm +++ b/Shorewall/Perl/Shorewall/Rules.pm @@ -721,7 +721,13 @@ sub process_a_policy1($$$$$$$) { require_capability 'AUDIT_TARGET', ":audit", "s" if $audit; - my ( $policy, $pactions ) = split( /:/, $originalpolicy, 2 ); + my ( $policy, $pactions ); + + if ( $originalpolicy =~ /^NFQUEUE\((.*?)\)(?::?(.*))/ ) { + ( $policy, $pactions ) = ( "NFQUEUE($1)", $2 ); + } else { + ( $policy, $pactions ) = split( /:/, $originalpolicy, 2 ); + } fatal_error "Invalid or missing POLICY ($originalpolicy)" unless $policy;