mirror of
https://github.com/novatiq/packages.git
synced 2026-04-30 15:38:40 +01:00
net/mwan3: add lock for mwan3 hotplug script
If more then one interface get up/down at once mwan3 could be in a undefined state, because more then one mwan3 hotplug script are running and editing the iptables. Lock the critical section should solve this issue. Signed-off-by: Florian Eckert <fe@dev.tdt.de>
This commit is contained in:
@@ -38,6 +38,7 @@ if [ "$ACTION" == "ifup" ]; then
|
|||||||
[ -n "$gateway" ] || exit 9
|
[ -n "$gateway" ] || exit 9
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
mwan3_lock
|
||||||
$LOG notice "$ACTION interface $INTERFACE (${DEVICE:-unknown})"
|
$LOG notice "$ACTION interface $INTERFACE (${DEVICE:-unknown})"
|
||||||
|
|
||||||
case "$ACTION" in
|
case "$ACTION" in
|
||||||
@@ -64,4 +65,6 @@ case "$ACTION" in
|
|||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
mwan3_unlock
|
||||||
|
|
||||||
exit 0
|
exit 0
|
||||||
|
|||||||
@@ -8,6 +8,14 @@ IPT6="ip6tables -t mangle -w"
|
|||||||
LOG="logger -t mwan3 -p"
|
LOG="logger -t mwan3 -p"
|
||||||
CONNTRACK_FILE="/proc/net/nf_conntrack"
|
CONNTRACK_FILE="/proc/net/nf_conntrack"
|
||||||
|
|
||||||
|
mwan3_lock() {
|
||||||
|
lock /var/run/mwan3.lock
|
||||||
|
}
|
||||||
|
|
||||||
|
mwan3_unlock() {
|
||||||
|
lock -u /var/run/mwan3.lock
|
||||||
|
}
|
||||||
|
|
||||||
mwan3_get_iface_id()
|
mwan3_get_iface_id()
|
||||||
{
|
{
|
||||||
local _tmp _iface _iface_count
|
local _tmp _iface _iface_count
|
||||||
|
|||||||
Reference in New Issue
Block a user