From 8ee6d915ee10fed7ad229cfd143d7b446cb18480 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Fri, 24 Dec 2010 21:39:44 +0000 Subject: [PATCH] libs/core: fix some issues in network model --- libs/core/luasrc/model/network.lua | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/libs/core/luasrc/model/network.lua b/libs/core/luasrc/model/network.lua index 18c84b624..17e074568 100644 --- a/libs/core/luasrc/model/network.lua +++ b/libs/core/luasrc/model/network.lua @@ -482,10 +482,11 @@ function network.ifname(self) return p .. "-" .. self.sid else local num = { } - local dev = self:_get("ifname") or - uci_r:get("network", self.sid, "ifname") + local dev = uci_r:get("network", self.sid, "ifname") or + uci_s:get("network", self.sid, "ifname") - dev = dev and dev:match("%S+") + dev = (type(dev) == "table") and dev[1] or dev + dev = (dev ~= nil) and dev:match("%S+") if not dev then uci_r:foreach("wireless", "wifi-iface", @@ -507,10 +508,18 @@ function network.ifname(self) end function network.device(self) - local dev = self:_get("device") + local dev = uci_r:get("network", self.sid, "device") or + uci_s:get("network", self.sid, "device") + + dev = (type(dev) == "table") and dev[1] or dev + if not dev or dev:match("[^%w%-%.%s]") then - dev = uci_r:get("network", self.sid, "ifname") + dev = uci_r:get("network", self.sid, "ifname") or + uci_s:get("network", self.sid, "ifname") + + dev = (type(dev) == "table") and dev[1] or dev end + return dev end -- 2.11.0