mwan3: fix race condition in route loading

Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
This commit is contained in:
Aaron Goodman 2020-12-13 09:27:03 -05:00 committed by Florian Eckert
parent 5691ff247f
commit 21ac1b2c3e
1 changed files with 2 additions and 2 deletions

View File

@ -158,6 +158,7 @@ main()
sh -c "echo \$\$; exec $IP monitor route" | {
read -r monitor_pid
trap_with_arg func_trap "$monitor_pid" SIGINT SIGTERM SIGKILL
KILL -SIGSTOP $$
while IFS='' read -r line; do
[ -z "${line##*table*}" ] && continue
LOG debug "handling route update $family '$line'"
@ -165,11 +166,10 @@ main()
done
} &
child=$!
kill -SIGSTOP $child
trap_with_arg func_trap "$child" SIGINT SIGTERM SIGKILL
mwan3_set_connected_${family}
mwan3_add_all_routes ${family}
kill -SIGCONT $child
wait $!
wait $child
}
main "$@"