mwan3: fix bugs introduced in 815e83d4
Fixes the following bugs introduced in commit 815e83d4
:
- hotplug: invalid parameter order when initial interface state is "online",
mwan3track expects initial state to be the third argument
- hotplug: missing source ip address when initial interface state is "offline"
- mwan3track: source ip address should be the fourth argument
Signed-off-by: Marcin Jurkowski <marcin1j@gmail.com>
This commit is contained in:
parent
af1e127bf4
commit
284284ef2e
2 changed files with 6 additions and 5 deletions
|
@ -68,13 +68,13 @@ case "$ACTION" in
|
||||||
if [ ${running} -eq 1 -a "${status}" = "online" ]; then
|
if [ ${running} -eq 1 -a "${status}" = "online" ]; then
|
||||||
mwan3_create_iface_rules $INTERFACE $DEVICE
|
mwan3_create_iface_rules $INTERFACE $DEVICE
|
||||||
mwan3_create_iface_route $INTERFACE $DEVICE
|
mwan3_create_iface_route $INTERFACE $DEVICE
|
||||||
mwan3_track $INTERFACE $DEVICE ${src_ip} "online"
|
mwan3_track $INTERFACE $DEVICE "online" "$src_ip"
|
||||||
mwan3_set_policies_iptables
|
mwan3_set_policies_iptables
|
||||||
mwan3_set_user_rules
|
mwan3_set_user_rules
|
||||||
mwan3_flush_conntrack $INTERFACE $DEVICE "ifup"
|
mwan3_flush_conntrack $INTERFACE $DEVICE "ifup"
|
||||||
else
|
else
|
||||||
$LOG notice "Starting tracker on interface $INTERFACE (${DEVICE:-unknown})"
|
$LOG notice "Starting tracker on interface $INTERFACE (${DEVICE:-unknown})"
|
||||||
mwan3_track $INTERFACE $DEVICE "offline"
|
mwan3_track $INTERFACE $DEVICE "offline" "$src_ip"
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
ifdown)
|
ifdown)
|
||||||
|
|
|
@ -52,6 +52,7 @@ main() {
|
||||||
INTERFACE=$1
|
INTERFACE=$1
|
||||||
DEVICE=$2
|
DEVICE=$2
|
||||||
STATUS=$3
|
STATUS=$3
|
||||||
|
SRC_IP=$4
|
||||||
mkdir -p /var/run/mwan3track/$1
|
mkdir -p /var/run/mwan3track/$1
|
||||||
trap clean_up SIGINT SIGTERM
|
trap clean_up SIGINT SIGTERM
|
||||||
trap if_down SIGUSR1
|
trap if_down SIGUSR1
|
||||||
|
@ -93,11 +94,11 @@ main() {
|
||||||
for track_ip in $track_ips; do
|
for track_ip in $track_ips; do
|
||||||
case "$track_method" in
|
case "$track_method" in
|
||||||
ping)
|
ping)
|
||||||
ping -I $2 -c $count -W $timeout -s $size -q $track_ip &> /dev/null ;;
|
ping -I $DEVICE -c $count -W $timeout -s $size -q $track_ip &> /dev/null ;;
|
||||||
arping)
|
arping)
|
||||||
arping -I $2 -c $count -w $timeout -q $track_ip &> /dev/null ;;
|
arping -I $DEVICE -c $count -w $timeout -q $track_ip &> /dev/null ;;
|
||||||
httping)
|
httping)
|
||||||
httping -y $3 -c $count -t $timeout -q $track_ip &> /dev/null ;;
|
httping -y $SRC_IP -c $count -t $timeout -q $track_ip &> /dev/null ;;
|
||||||
esac
|
esac
|
||||||
if [ $? -eq 0 ]; then
|
if [ $? -eq 0 ]; then
|
||||||
let host_up_count++
|
let host_up_count++
|
||||||
|
|
Loading…
Reference in a new issue