From 4201282559d85988990c8f48f4075bed5f785c2f Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Thu, 20 Jul 2017 11:44:25 +0200 Subject: [PATCH] luci-base: let luci.sys.net.devices() return all netdevs The previous implementation of the function only returned ethernet interfaces because it relied on the AF_PACKET family entries returned by getifaddrs(). Change the function to simply collect all interface names it sees in order to avoid missing tunnel interfaces. Fixes FS#917. Signed-off-by: Jo-Philipp Wich --- modules/luci-base/luasrc/sys.lua | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/modules/luci-base/luasrc/sys.lua b/modules/luci-base/luasrc/sys.lua index 99f3ee291..115c54d54 100644 --- a/modules/luci-base/luasrc/sys.lua +++ b/modules/luci-base/luasrc/sys.lua @@ -348,8 +348,10 @@ end function net.devices() local devs = {} + local seen = {} for k, v in ipairs(nixio.getifaddrs()) do - if v.family == "packet" then + if v.name and not seen[v.name] then + seen[v.name] = true devs[#devs+1] = v.name end end -- 2.25.1