diff --git a/Shorewall-perl/Shorewall/Chains.pm b/Shorewall-perl/Shorewall/Chains.pm index d233c7c53..da086b8e9 100644 --- a/Shorewall-perl/Shorewall/Chains.pm +++ b/Shorewall-perl/Shorewall/Chains.pm @@ -784,15 +784,15 @@ sub do_proto( $$$ ) $output = "-p $proto "; } - my $dismultiport = 0; + my $multiport = 0; if ( $ports ne '' ) { - if ( $ports =~ tr/,/,/ > 0 ) { + if ( $ports =~ tr/,/,/ > 0 || $sports =~ tr/,/,/ > 0 ) { fatal_error "Port list requires Multiport support in your kernel/iptables: $ports" unless $capabilities{MULTIPORT}; fatal_error "Too many entries in port list: $ports" if port_count( $ports ) > 15; $ports = validate_port_list $ports; $output .= "-m multiport --dports $ports "; - $dismultiport = 1; + $multiport = 1; } else { $ports = validate_portpair $ports; $output .= "--dport $ports "; @@ -800,7 +800,7 @@ sub do_proto( $$$ ) } if ( $sports ne '' ) { - if ( $sports =~ tr/,/,/ > 0 || $dismultiport ) { + if ( $sports =~ tr/,/,/ > 0 || $multiport ) { fatal_error "Port list requires Multiport support in your kernel/iptables: $sports" unless $capabilities{MULTIPORT}; fatal_error "Too many entries in port list: $sports" if port_count( $sports ) > 15; $sports = validate_port_list $sports;