#!/usr/bin/perl
-#
-# IPFire Scripts
-#
-# This code is distributed under the terms of the GPL
-#
-# (c) The IPFire Team
-#
+###############################################################################
+# #
+# IPFire.org - A linux based firewall #
+# Copyright (C) 2007 Michael Tremer & Christian Schmidt #
+# #
+# This program is free software: you can redistribute it and/or modify #
+# it under the terms of the GNU General Public License as published by #
+# the Free Software Foundation, either version 3 of the License, or #
+# (at your option) any later version. #
+# #
+# This program is distributed in the hope that it will be useful, #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
+# GNU General Public License for more details. #
+# #
+# You should have received a copy of the GNU General Public License #
+# along with this program. If not, see <http://www.gnu.org/licenses/>. #
+# #
+###############################################################################
use strict;
# enable only the following on debugging purpose
### SET QUEUE LENGTH & MTU - has just to be tested!!! IMPORTANT
ip link set dev $qossettings{'RED_DEV'} qlen $qossettings{'QLENGTH'}
- ip link set dev $qossettings{'RED_DEV'} mtu $qossettings{'MTU'}
+ #ip link set dev $qossettings{'RED_DEV'} mtu $qossettings{'MTU'}
### ADD HTB QDISC FOR $qossettings{'RED_DEV'}
tc qdisc add dev $qossettings{'RED_DEV'} root handle 1: htb default $qossettings{'DEFCLASS_OUT'}
print "-d $qossettings{'DIP'} ";
}
print "-p $qossettings{'PPROT'} ";
- if (($qossettings{'QPORT'} ne '') || ($qossettings{'DPORT'} ne '')){
- print "-m multiport ";
- }
+# if (($qossettings{'QPORT'} ne '') || ($qossettings{'DPORT'} ne '')){
+# print "-m multiport ";
+# }
if ($qossettings{'QPORT'} ne ''){
print "--sport $qossettings{'QPORT'} ";
}
print "-d $qossettings{'DIP'} ";
}
print "-p $qossettings{'PPROT'} ";
- if (($qossettings{'QPORT'} ne '') || ($qossettings{'DPORT'} ne '')){
- print "-m multiport ";
- }
+# if (($qossettings{'QPORT'} ne '') || ($qossettings{'DPORT'} ne '')){
+# print "-m multiport ";
+# }
if ($qossettings{'QPORT'} ne ''){
print "--sport $qossettings{'QPORT'} ";
}
print "-d $qossettings{'DIP'} ";
}
print "-p $qossettings{'PPROT'} ";
- if (($qossettings{'QPORT'} ne '') || ($qossettings{'DPORT'} ne '')){
- print "-m multiport ";
- }
+# if (($qossettings{'QPORT'} ne '') || ($qossettings{'DPORT'} ne '')){
+# print "-m multiport ";
+# }
if ($qossettings{'QPORT'} ne ''){
print "--sport $qossettings{'QPORT'} ";
}
print "-d $qossettings{'DIP'} ";
}
print "-p $qossettings{'PPROT'} ";
- if (($qossettings{'QPORT'} ne '') || ($qossettings{'DPORT'} ne '')){
- print "-m multiport ";
- }
+# if (($qossettings{'QPORT'} ne '') || ($qossettings{'DPORT'} ne '')){
+# print "-m multiport ";
+# }
if ($qossettings{'QPORT'} ne ''){
print "--sport $qossettings{'QPORT'} ";
}
;;
clear|stop)
### RESET EVERYTHING TO A KNOWN STATE
- killall -9 qosd
+ killall qosd
+ (sleep 3 && killall -9 qosd &>/dev/null) &
# DELETE QDISCS
tc qdisc del dev $qossettings{'RED_DEV'} root
tc qdisc del dev $qossettings{'IMQ_DEV'} root