omcproxy: optimize interface triggers

Before installing an interface triggger check if an interface
trigger for the interface is already in place.
This avoids installing identical interface triggers for a given
interface

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
This commit is contained in:
Hans Dedecker 2018-12-29 15:56:39 +01:00
parent df8f8bad08
commit d405edb481
2 changed files with 13 additions and 2 deletions

View File

@ -8,7 +8,7 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=omcproxy
PKG_RELEASE:=7
PKG_RELEASE:=8
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL=$(PROJECT_GIT)/project/omcproxy.git

View File

@ -51,7 +51,16 @@ omcproxy_add_network_triggers() {
config_get downlinks $1 downlink
for link in $uplink $downlinks; do
procd_add_interface_trigger "interface.*" $link /etc/init.d/omcproxy restart
local duplicate=0
for l in $LINKS; do
[ "$l" = "$link" ] && duplicate=1
done
[ "$duplicate" = 0 ] && {
LINKS="$LINKS $link"
procd_add_interface_trigger "interface.*" $link /etc/init.d/omcproxy restart
}
done
}
@ -114,6 +123,8 @@ omcproxy_add_firewall_rules() {
}
service_triggers() {
LINKS=""
procd_add_reload_trigger "omcproxy"
config_foreach omcproxy_add_network_triggers proxy
}