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
/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"
mwan3_flush_conntrack "$INTERFACE" "$ACTION"
exit 0
@ -69,7 +69,7 @@ case "$ACTION" in
mwan3_create_iface_iptables $INTERFACE $DEVICE
mwan3_create_iface_rules $INTERFACE $DEVICE
mwan3_set_iface_hotplug_state $INTERFACE "$status"
if [ "$MWAN3_STARTUP" != 1 ]; then
if [ "$MWAN3_STARTUP" = "cmd" ]; then
mwan3_create_iface_route $INTERFACE $DEVICE
mwan3_set_general_rules
[ "$status" = "online" ] && mwan3_set_policies_iptables

View File

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

View File

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

View File

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