diff --git a/Shorewall/Perl/Shorewall/Tc.pm b/Shorewall/Perl/Shorewall/Tc.pm index a6f76823f..9efce5467 100644 --- a/Shorewall/Perl/Shorewall/Tc.pm +++ b/Shorewall/Perl/Shorewall/Tc.pm @@ -1409,7 +1409,7 @@ sub setup_traffic_shaping() { validate_tc_device while read_a_line; } - my $sfq = $devnum; + my $sfq = 0; my $sfqinhex; $devnum = $devnum > 10 ? 10 : 1; @@ -1553,7 +1553,9 @@ sub setup_traffic_shaping() { } if ( $tcref->{leaf} && ! $tcref->{pfifo} ) { - $sfqinhex = in_hexp( ++$sfq); + 1 while $devnums[++$sfq]; + + $sfqinhex = in_hexp( $sfq); if ( $devref->{qdisc} eq 'htb' ) { emit( "run_tc qdisc add dev $device parent $classid handle $sfqinhex: sfq quantum \$quantum limit $tcref->{limit} perturb 10" ); } else {