Allow 'noinline' in /etc/shorewall[6]/actions to override 'inline'

Signed-off-by: Tom Eastep <teastep@shorewall.net>
This commit is contained in:
Tom Eastep 2017-10-20 09:19:50 -07:00
parent a0eb91cb90
commit b35f1112f4
No known key found for this signature in database
GPG Key ID: 96E6B3F2423A4D10

View File

@ -2066,9 +2066,9 @@ sub process_actions() {
unless ( $type & INLINE ) {
$type = INLINE if $opts & INLINE_OPT;
}
}
fatal_error "Conflicting OPTIONS ($options)" if ( $opts & NOINLINE_OPT && $type == INLINE ) || ( $opts & INLINE_OPT && $opts & BUILTIN_OPT );
fatal_error "Conflicting OPTIONS ($options)" if ( $opts & NOINLINE_OPT && $type == INLINE ) || ( $opts & INLINE_OPT && $opts & BUILTIN_OPT );
}
if ( my $actiontype = $targets{$action} ) {
if ( ( $actiontype & ACTION ) && ( $type == INLINE ) ) {
@ -2077,6 +2077,9 @@ sub process_actions() {
next;
}
delete $actions{$action};
delete $targets{$action};
} elsif ( ( $actiontype & INLINE ) && ( $type == ACTION ) && $opts & NOINLINE_OPT ) {
delete $actions{$action};
delete $targets{$action};
} else {