mwan3: make it clearer who initiated the start

It was somewhat opaque how the variable a is questioned. To show this
better the variable is now a string and not a boolean. So you can see
directly what should happen. With a boolean you always have to think
about what it means when 0 or 1 is used.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
This commit is contained in:
Florian Eckert 2020-11-04 16:24:55 +01:00
parent 59d12598b5
commit 1f1d21ed28
4 changed files with 10 additions and 10 deletions

View file

@ -23,7 +23,7 @@ fi
config_load mwan3 config_load mwan3
/etc/init.d/mwan3 running || { /etc/init.d/mwan3 running || {
[ "$MWAN3_STARTUP" = 1 ] || procd_lock [ "$MWAN3_STARTUP" = "init" ] || procd_lock
LOG notice "mwan3 hotplug $ACTION on $INTERFACE not called because globally disabled" LOG notice "mwan3 hotplug $ACTION on $INTERFACE not called because globally disabled"
mwan3_flush_conntrack "$INTERFACE" "$ACTION" mwan3_flush_conntrack "$INTERFACE" "$ACTION"
exit 0 exit 0
@ -69,7 +69,7 @@ case "$ACTION" in
mwan3_create_iface_iptables $INTERFACE $DEVICE mwan3_create_iface_iptables $INTERFACE $DEVICE
mwan3_create_iface_rules $INTERFACE $DEVICE mwan3_create_iface_rules $INTERFACE $DEVICE
mwan3_set_iface_hotplug_state $INTERFACE "$status" mwan3_set_iface_hotplug_state $INTERFACE "$status"
if [ "$MWAN3_STARTUP" != 1 ]; then if [ "$MWAN3_STARTUP" = "cmd" ]; then
mwan3_create_iface_route $INTERFACE $DEVICE mwan3_create_iface_route $INTERFACE $DEVICE
mwan3_set_general_rules mwan3_set_general_rules
[ "$status" = "online" ] && mwan3_set_policies_iptables [ "$status" = "online" ] && mwan3_set_policies_iptables

View file

@ -36,7 +36,7 @@ start_service() {
mwan3_set_custom_ipset mwan3_set_custom_ipset
mwan3_set_general_rules mwan3_set_general_rules
mwan3_set_general_iptables mwan3_set_general_iptables
config_foreach mwan3_ifup interface 1 config_foreach mwan3_ifup interface "init"
wait $hotplug_pids wait $hotplug_pids
mwan3_set_policies_iptables mwan3_set_policies_iptables
mwan3_set_user_rules mwan3_set_user_rules

View file

@ -955,12 +955,12 @@ mwan3_interface_shutdown()
mwan3_ifup() mwan3_ifup()
{ {
local up l3_device status interface true_iface mwan3_startup local interface=$1
local caller=$2
interface=$1 local up l3_device status true_iface
mwan3_startup=$2
if [ "${mwan3_startup}" != 1 ]; then if [ "${caller}" = "cmd" ]; then
# It is not necessary to obtain a lock here, because it is obtained in the hotplug # It is not necessary to obtain a lock here, because it is obtained in the hotplug
# script, but we still want to do the check to print a useful error message # script, but we still want to do the check to print a useful error message
/etc/init.d/mwan3 running || { /etc/init.d/mwan3 running || {
@ -979,7 +979,7 @@ mwan3_ifup()
} }
hotplug_startup() hotplug_startup()
{ {
env -i MWAN3_STARTUP=$mwan3_startup ACTION=ifup \ env -i MWAN3_STARTUP=$caller ACTION=ifup \
INTERFACE=$interface DEVICE=$l3_device \ INTERFACE=$interface DEVICE=$l3_device \
sh /etc/hotplug.d/iface/15-mwan3 sh /etc/hotplug.d/iface/15-mwan3
} }
@ -988,7 +988,7 @@ mwan3_ifup()
return return
fi fi
if [ "${mwan3_startup}" = 1 ]; then if [ "${caller}" = "init" ]; then
hotplug_startup & hotplug_startup &
hotplug_pids="$hotplug_pids $!" hotplug_pids="$hotplug_pids $!"
else else

View file

@ -54,7 +54,7 @@ ifup() {
exit 0 exit 0
fi fi
mwan3_ifup "$1" mwan3_ifup "$1" "cmd"
} }
interfaces() interfaces()