diff --git a/Shorewall/Perl/Shorewall/Providers.pm b/Shorewall/Perl/Shorewall/Providers.pm index b90dd76c4..087b02721 100644 --- a/Shorewall/Perl/Shorewall/Providers.pm +++ b/Shorewall/Perl/Shorewall/Providers.pm @@ -616,8 +616,16 @@ sub process_a_provider( $ ) { fatal_error "MARK not allowed with 'tproxy'" if $mark ne '-'; fatal_error "'persistent' is not valid with 'tproxy" if $persistent; $mark = $globals{TPROXY_MARK}; + } elsif ( $interfaceref->{options}{routefilter} ) { + if ( $config{USE_DEFAULT_RT} ) { + fatal_error "Provider interfaces may not specify 'routefilter' when USE_DEFAULT_RT=Yes"; + } else { + fatal_error "Provider interfaces may not specify 'routefilter' without 'balance' or 'primary'" unless $balance; + } } + + my $val = 0; my $pref;