summaryrefslogtreecommitdiffstats
path: root/package
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2015-09-26 23:27:23 +0000
committerFelix Fietkau <nbd@openwrt.org>2015-09-26 23:27:23 +0000
commit4e4b4c8cb5d510e26debf47e6ea5db6970038111 (patch)
tree11c577013b8bcca01495a291ab30ba8b0760279f /package
parent38182373e0cef07f350339e93153faa38a52a5bd (diff)
downloadmaster-31e0f0ae-4e4b4c8cb5d510e26debf47e6ea5db6970038111.tar.gz
master-31e0f0ae-4e4b4c8cb5d510e26debf47e6ea5db6970038111.tar.bz2
master-31e0f0ae-4e4b4c8cb5d510e26debf47e6ea5db6970038111.zip
igmpproxy: fix spurious restarts on interface events, pass used netdevs to procd instead
Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 47055
Diffstat (limited to 'package')
-rw-r--r--package/network/services/igmpproxy/files/igmpproxy.init6
1 files changed, 5 insertions, 1 deletions
diff --git a/package/network/services/igmpproxy/files/igmpproxy.init b/package/network/services/igmpproxy/files/igmpproxy.init
index 3ff8f19dad..d03f90f0c8 100644
--- a/package/network/services/igmpproxy/files/igmpproxy.init
+++ b/package/network/services/igmpproxy/files/igmpproxy.init
@@ -51,6 +51,8 @@ igmp_add_phyint() {
return;
}
+ append netdevs "$device"
+
[[ "$direction" = "upstream" ]] && has_upstream=1
echo -e "\nphyint $device $direction ratelimit 0 threshold 1" >> /var/etc/igmpproxy.conf
@@ -67,7 +69,7 @@ igmp_add_network() {
local network
config_get network $1 network
- procd_add_interface_trigger "interface.*" $network /etc/init.d/igmpproxy restart
+ procd_add_interface_trigger "interface.*" $network /etc/init.d/igmpproxy reload
}
igmp_add_firewall_routing() {
@@ -110,6 +112,7 @@ service_triggers() {
start_service() {
has_upstream=
+ netdevs=
config_load igmpproxy
config_foreach igmp_header igmpproxy
@@ -121,6 +124,7 @@ start_service() {
[ -n "$OPTIONS" ] && procd_append_param $OPTIONS
procd_append_param command $CONFIGFILE
procd_set_param file $CONFIGFILE
+ procd_set_param netdev $netdevs
procd_set_param respawn
procd_open_trigger
config_foreach igmp_add_network phyint