luci-base: do not assume a fixed host address in delegated prefix (#1484)
authorJo-Philipp Wich <jo@mein.io>
Fri, 16 Feb 2018 16:04:13 +0000 (17:04 +0100)
committerJo-Philipp Wich <jo@mein.io>
Fri, 16 Feb 2018 16:05:52 +0000 (17:05 +0100)
OpenWrt/LEDE introduced the "local-address" field a while back to expose the
effective local host address of the delegated prefix, so use that information
instead of assuming `[prefix]:1`.

Fixes #1484.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
modules/luci-base/luasrc/model/network.lua

index 6f405a1..9ea8e36 100644 (file)
@@ -998,7 +998,12 @@ function protocol.ip6addrs(self)
 
        if type(addrs) == "table" then
                for n, addr in ipairs(addrs) do
-                       rv[#rv+1] = "%s1/%d" %{ addr.address, addr.mask }
+                       if type(addr["local-address"]) == "table" then
+                               rv[#rv+1] = "%s/%d" %{
+                                       addr["local-address"].address,
+                                       addr["local-address"].mask
+                               }
+                       end
                end
        end