diff --git a/Shorewall-perl/Shorewall/Tc.pm b/Shorewall-perl/Shorewall/Tc.pm index 4736fee7b..47cf713ce 100644 --- a/Shorewall-perl/Shorewall/Tc.pm +++ b/Shorewall-perl/Shorewall/Tc.pm @@ -607,6 +607,8 @@ sub process_tc_filter( $$$$$$ ) { for my $portrange ( split_list $portlist, 'port list' ) { if ( $protonumber == ICMP ) { + fatal_error "SOURCE PORT(S) are not allowed with ICMP" if $sportlist ne '-'; + my ( $icmptype , $icmpcode ) = split '//', validate_icmp( $portrange ); $icmptype = in_hex2 numeric_value $icmptype;