diff --git a/Shorewall/Perl/Shorewall/Tc.pm b/Shorewall/Perl/Shorewall/Tc.pm index 0cbde42fb..8e7b6c63f 100644 --- a/Shorewall/Perl/Shorewall/Tc.pm +++ b/Shorewall/Perl/Shorewall/Tc.pm @@ -260,7 +260,7 @@ sub process_mangle_rule1( $$$$$$$$$$$$$$$$$$ ) { $chain ||= $designator; $chain ||= $default_chain; - $option = '--set-mark'; + $option ||= ( $and_or eq '|' ? '--or-mark' : $and_or ? '--and-mark' : '--set-mark' ); my $chainref = ensure_chain( 'mangle', $chain = $chainnames{$chain} );