#!/bin/sh
. /lib/functions/gl_util.sh

member=$(mwan3_init)
track_ip_list=$(uci -q get glconfig.general.track_ip)
track_ipv6_list=$(uci -q get glconfig.general.track_ipv6)
if [ -n "$track_ip_list" ] || [ -n "$track_ipv6_list" ]; then
    for m in $member
    do
        if [ -n "$(echo $m | grep -v modem |grep -v '6')" -o -n "$(echo $m | grep modem | grep -v '_6')" ]; then
            if [ -n "$track_ip_list" ]; then
                uci delete mwan3.${m}.track_ip 2>/dev/null
                for ip in $track_ip_list; do
                    uci add_list mwan3.${m}.track_ip="$ip"
                done
            fi
        fi
        if [ -n "$(echo $m | grep -v modem |grep '6')" -o -n "$(echo $m | grep modem | grep '_6')" ]; then
            if [ -n "$track_ipv6_list" ]; then
                uci delete mwan3.${m}.track_ip 2>/dev/null
                for ipv6_addr in $track_ipv6_list; do
                    uci add_list mwan3.${m}.track_ip="$ipv6_addr"
                done
            fi
        fi
    done
fi

if [ "$(uci -q get glconfig.general.inited)" = "1" -a -z "$(uci -q get mwan3.wan_balance)" ]; then
    for m in $member
    do
        uci set mwan3.${m}_balance="member"
        uci set mwan3.${m}_balance.interface="$m"
        uci set mwan3.${m}_balance.metric="1"
        uci set mwan3.${m}_balance.weight="3"
    done
fi