[PATCH v4 01/11] simple-tc: Fix simple-tc not being active if set
Adrian Schmutzler
freifunk at adrianschmutzler.de
Fr Jul 21 15:08:39 CEST 2017
Simple-tc is active immediately after the call and needs no
restart of anything
Signed-off-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
Tested-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
---
src/packages/fff/fff-network/Makefile | 2 +-
src/packages/fff/fff-network/files/usr/sbin/applysimpletc | 14 ++++++++++++++
.../fff/fff-network/files/usr/sbin/configurenetwork | 12 ++++++++++++
.../fff/fff-web/files/www/ssl/cgi-bin/settings.html | 3 +++
4 files changed, 30 insertions(+), 1 deletion(-)
create mode 100755 src/packages/fff/fff-network/files/usr/sbin/applysimpletc
diff --git a/src/packages/fff/fff-network/Makefile b/src/packages/fff/fff-network/Makefile
index fee3f98..f7dc63c 100644
--- a/src/packages/fff/fff-network/Makefile
+++ b/src/packages/fff/fff-network/Makefile
@@ -1,7 +1,7 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=fff-network
-PKG_VERSION:=0.0.6
+PKG_VERSION:=7
PKG_RELEASE:=1
PKG_BUILD_DIR:=$(BUILD_DIR)/fff-network
diff --git a/src/packages/fff/fff-network/files/usr/sbin/applysimpletc b/src/packages/fff/fff-network/files/usr/sbin/applysimpletc
new file mode 100755
index 0000000..a9744b0
--- /dev/null
+++ b/src/packages/fff/fff-network/files/usr/sbin/applysimpletc
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+tc_device=$(uci -q get "network.wan.ifname")
+tc_enabled=$(uci -q get "simple-tc.example.enabled")
+tc_in=$(uci -q get "simple-tc.example.limit_ingress")
+tc_out=$(uci -q get "simple-tc.example.limit_egress")
+
+if [ "$tc_enabled" -eq 1 ] ; then
+ test -n "$tc_in" || tc_in=-
+ test -n "$tc_out" || tc_out=-
+ simple-tc "$tc_device" "$tc_in" "$tc_out"
+else
+ simple-tc "$tc_device" - -
+fi
diff --git a/src/packages/fff/fff-network/files/usr/sbin/configurenetwork b/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
index 7ecfa3b..63b216a 100755
--- a/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
+++ b/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
@@ -189,3 +189,15 @@ else
/etc/init.d/fff-uradvd restart
fi
+
+# Apply traffic control
+tc_device=$(uci -q get "network.wan.ifname")
+tc_enabled=$(uci -q get "simple-tc.example.enabled")
+tc_in=$(uci -q get "simple-tc.example.limit_ingress")
+tc_out=$(uci -q get "simple-tc.example.limit_egress")
+
+if [ "$tc_enabled" -eq 1 ] ; then
+ test -n "$tc_in" || tc_in=-
+ test -n "$tc_out" || tc_out=-
+ simple-tc "$tc_device" "$tc_in" "$tc_out"
+fi
diff --git a/src/packages/fff/fff-web/files/www/ssl/cgi-bin/settings.html b/src/packages/fff/fff-web/files/www/ssl/cgi-bin/settings.html
index a7417dc..bdbd69b 100755
--- a/src/packages/fff/fff-web/files/www/ssl/cgi-bin/settings.html
+++ b/src/packages/fff/fff-web/files/www/ssl/cgi-bin/settings.html
@@ -32,6 +32,9 @@ if [ "$REQUEST_METHOD" == "POST" ] ; then
uci -q set "simple-tc.example.limit_egress=${POST_limit_egress}"
uci commit
+
+ /usr/sbin/applysimpletc
+
MSG='<span class="green">Daten gespeichert! - Bitte Router neustarten.</span>'
fi
fi
--
2.7.4
Mehr Informationen über die Mailingliste franken-dev