From 2f2044ecb002fe6cc7b02d21c4c2484e50ff0c8b Mon Sep 17 00:00:00 2001 From: Florian Eckert Date: Tue, 14 Jul 2020 12:02:01 +0200 Subject: [PATCH] mwan3: cleanup function mwan3_create_iface_route Signed-off-by: Florian Eckert (cherry picked from commit d0c248a7dab92c81e348a31cf35c2e972f26ca39) --- net/mwan3/files/lib/mwan3/mwan3.sh | 54 ++++++++++++------------------ 1 file changed, 21 insertions(+), 33 deletions(-) diff --git a/net/mwan3/files/lib/mwan3/mwan3.sh b/net/mwan3/files/lib/mwan3/mwan3.sh index fd9f9fc417..5ffef9405e 100644 --- a/net/mwan3/files/lib/mwan3/mwan3.sh +++ b/net/mwan3/files/lib/mwan3/mwan3.sh @@ -483,56 +483,44 @@ mwan3_delete_iface_iptables() mwan3_create_iface_route() { - local id route_args metric + local id via metric - config_get family $1 family ipv4 - mwan3_get_iface_id id $1 + config_get family "$1" family ipv4 + mwan3_get_iface_id id "$1" [ -n "$id" ] || return 0 if [ "$family" = "ipv4" ]; then - if ubus call network.interface.${1}_4 status &>/dev/null; then - network_get_gateway route_args ${1}_4 - else - network_get_gateway route_args $1 - fi - - if [ -n "$route_args" -a "$route_args" != "0.0.0.0" ]; then - route_args="via $route_args" + if ubus call "network.interface.${1}_4" status &>/dev/null; then + network_get_gateway via "${1}_4" else - route_args="" + network_get_gateway via "$1" fi - network_get_metric metric $1 - if [ -n "$metric" -a "$metric" != "0" ]; then - route_args="$route_args metric $metric" - fi + network_get_metric metric "$1" - $IP4 route flush table $id - $IP4 route add table $id default $route_args dev $2 + $IP4 route flush table "$id" + $IP4 route add table "$id" default \ + ${via:+via} $via \ + ${metric:+metric} $metric \ + dev "$2" mwan3_rtmon_ipv4 fi if [ "$family" = "ipv6" ]; then - if ubus call network.interface.${1}_6 status &>/dev/null; then - network_get_gateway6 route_args ${1}_6 - else - network_get_gateway6 route_args $1 - fi - - if [ -n "$route_args" -a "$route_args" != "::" ]; then - route_args="via $route_args" + if ubus call "network.interface.${1}_6" status &>/dev/null; then + network_get_gateway6 via "${1}_6" else - route_args="" + network_get_gateway6 via "$1" fi - network_get_metric metric $1 - if [ -n "$metric" -a "$metric" != "0" ]; then - route_args="$route_args metric $metric" - fi + network_get_metric metric "$1" - $IP6 route flush table $id - $IP6 route add table $id default $route_args dev $2 + $IP6 route flush table "$id" + $IP6 route add table "$id" default \ + ${via:+via} $via \ + ${metric:+metric} $metric \ + dev "$2" mwan3_rtmon_ipv6 fi } -- 2.30.2