mirror of
https://git.openwrt.org/feed/packages.git
synced 2024-06-15 03:43:53 +02:00
Merge pull request #4722 from TDT-GmbH/mwan3-fixes
net/mwan3: fixes for mwan3 (lede-17.01)
This commit is contained in:
commit
4e845ad639
|
@ -8,9 +8,9 @@
|
|||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=mwan3
|
||||
PKG_VERSION:=2.0
|
||||
PKG_RELEASE:=3
|
||||
PKG_MAINTAINER:=Jeroen Louwes <jeroen.louwes@gmail.com>
|
||||
PKG_VERSION:=2.0.1
|
||||
PKG_RELEASE:=1
|
||||
PKG_MAINTAINER:=Florian Eckert <fe@dev.tdt.de>
|
||||
PKG_LICENSE:=GPLv2
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
@ -21,7 +21,6 @@ define Package/mwan3
|
|||
SUBMENU:=Routing and Redirection
|
||||
DEPENDS:=+ip +ipset +iptables +iptables-mod-conntrack-extra +iptables-mod-ipopt
|
||||
TITLE:=Multiwan hotplug script with connection tracking support
|
||||
MAINTAINER:=Jeroen Louwes <jeroen.louwes@gmail.com>
|
||||
PKGARCH:=all
|
||||
endef
|
||||
|
||||
|
|
|
@ -4,11 +4,6 @@
|
|||
. /lib/functions/network.sh
|
||||
. /lib/mwan3/mwan3.sh
|
||||
|
||||
config_load mwan3
|
||||
|
||||
config_get enabled $INTERFACE enabled 0
|
||||
[ "$enabled" == "1" ] || exit 0
|
||||
|
||||
[ "$ACTION" == "ifup" -o "$ACTION" == "ifdown" ] || exit 1
|
||||
[ -n "$INTERFACE" ] || exit 2
|
||||
|
||||
|
@ -22,6 +17,14 @@ fi
|
|||
[ -x /usr/sbin/ip6tables ] || exit 7
|
||||
[ -x /usr/bin/logger ] || exit 8
|
||||
|
||||
mwan3_lock
|
||||
mwan3_set_connected_iptables
|
||||
mwan3_unlock
|
||||
|
||||
config_load mwan3
|
||||
config_get enabled $INTERFACE enabled 0
|
||||
[ "$enabled" == "1" ] || exit 0
|
||||
|
||||
config_get family $INTERFACE family ipv4
|
||||
|
||||
if [ "$family" == "ipv4" ]; then
|
||||
|
@ -30,12 +33,13 @@ elif [ "$family" == "ipv6" ]; then
|
|||
network_get_gateway6 gateway $INTERFACE
|
||||
fi
|
||||
|
||||
[ -n "$gateway" ] || exit 9
|
||||
if [ "$ACTION" == "ifup" ]; then
|
||||
[ -n "$gateway" ] || exit 9
|
||||
fi
|
||||
|
||||
mwan3_lock
|
||||
$LOG notice "$ACTION interface $INTERFACE (${DEVICE:-unknown})"
|
||||
|
||||
mwan3_set_connected_iptables
|
||||
|
||||
case "$ACTION" in
|
||||
ifup)
|
||||
mwan3_set_general_rules
|
||||
|
@ -49,7 +53,6 @@ case "$ACTION" in
|
|||
;;
|
||||
ifdown)
|
||||
mwan3_delete_iface_rules $INTERFACE
|
||||
mwan3_delete_iface_iptables $INTERFACE
|
||||
mwan3_delete_iface_route $INTERFACE
|
||||
mwan3_delete_iface_ipset_entries $INTERFACE
|
||||
mwan3_set_policies_iptables
|
||||
|
@ -57,4 +60,6 @@ case "$ACTION" in
|
|||
;;
|
||||
esac
|
||||
|
||||
mwan3_unlock
|
||||
|
||||
exit 0
|
||||
|
|
|
@ -7,6 +7,18 @@ IPT4="/usr/sbin/iptables -t mangle -w"
|
|||
IPT6="/usr/sbin/ip6tables -t mangle -w"
|
||||
LOG="/usr/bin/logger -t mwan3 -p"
|
||||
|
||||
mwan3_lock() {
|
||||
lock /var/run/mwan3.lock
|
||||
}
|
||||
|
||||
mwan3_unlock() {
|
||||
lock -u /var/run/mwan3.lock
|
||||
}
|
||||
|
||||
mwan3_lock_clean() {
|
||||
rm -rf /var/run/mwan3.lock
|
||||
}
|
||||
|
||||
mwan3_get_iface_id()
|
||||
{
|
||||
local _tmp _iface _iface_count
|
||||
|
|
|
@ -46,6 +46,7 @@ ifdown()
|
|||
kill $(cat /var/run/mwan3track-$1.pid)
|
||||
rm /var/run/mwan3track-$1.pid
|
||||
fi
|
||||
mwan3_delete_iface_iptables $1
|
||||
}
|
||||
|
||||
ifup()
|
||||
|
@ -163,6 +164,8 @@ stop()
|
|||
for ipset in $($IPS -n list | grep mwan3 | grep -E '_v4|_v6'); do
|
||||
$IPS -q destroy $ipset
|
||||
done
|
||||
|
||||
mwan3_lock_clean
|
||||
}
|
||||
|
||||
restart() {
|
||||
|
|
|
@ -59,7 +59,8 @@ while true; do
|
|||
fi
|
||||
|
||||
host_up_count=0
|
||||
sleep $6
|
||||
sleep $6 &
|
||||
wait
|
||||
done
|
||||
|
||||
exit 1
|
||||
|
|
Loading…
Reference in New Issue
Block a user