From f50de419592d58160f15a04978b0de6e94b854fb Mon Sep 17 00:00:00 2001 From: Florian Eckert Date: Wed, 9 May 2018 13:13:20 +0200 Subject: [PATCH] luci-app-mwan3: honor dynamic interface to get gateway ip If a logical interface setup and adds in the protocol handler a dynamic interface then the gateway is configured in the dynamic interface and the setting up logical interface does not have a gateway specified. To fix this check first if a dynamic interface is present and use this gateway ip if found and if no dynamich interface is set then check for a gateway in the logical interface. Signed-off-by: Florian Eckert --- .../luci-app-mwan3/luasrc/controller/mwan3.lua | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/applications/luci-app-mwan3/luasrc/controller/mwan3.lua b/applications/luci-app-mwan3/luasrc/controller/mwan3.lua index d5fc4a3ede..01e40d9948 100644 --- a/applications/luci-app-mwan3/luasrc/controller/mwan3.lua +++ b/applications/luci-app-mwan3/luasrc/controller/mwan3.lua @@ -114,8 +114,14 @@ function diagnosticsData(interface, task) end function get_gateway(inteface) - local dump = require("luci.util").ubus("network.interface.%s" % interface, "status", {}) - local gateway + local gateway = nil + local dump = nil + + dump = require("luci.util").ubus("network.interface.%s_4" % interface, "status", {}) + if not dump then + dump = require("luci.util").ubus("network.interface.%s" % interface, "status", {}) + end + if dump and dump.route then local _, route for _, route in ipairs(dump.route) do -- 2.30.2