libs/core: always use internal network ids for admin links to wifi networks (#172)
This commit is contained in:
parent
ea294f0b64
commit
5dd3b57bbb
1 changed files with 15 additions and 14 deletions
|
@ -936,21 +936,22 @@ wifinet = utl.class()
|
||||||
function wifinet.__init__(self, net, data)
|
function wifinet.__init__(self, net, data)
|
||||||
self.sid = net
|
self.sid = net
|
||||||
|
|
||||||
local dev = uci_s:get("wireless", self.sid, "ifname")
|
|
||||||
if not dev then
|
|
||||||
local num = { }
|
local num = { }
|
||||||
|
local netid
|
||||||
uci_r:foreach("wireless", "wifi-iface",
|
uci_r:foreach("wireless", "wifi-iface",
|
||||||
function(s)
|
function(s)
|
||||||
if s.device then
|
if s.device then
|
||||||
num[s.device] = num[s.device] and num[s.device] + 1 or 1
|
num[s.device] = num[s.device] and num[s.device] + 1 or 1
|
||||||
if s['.name'] == self.sid then
|
if s['.name'] == self.sid then
|
||||||
dev = "%s.network%d" %{ s.device, num[s.device] }
|
netid = "%s.network%d" %{ s.device, num[s.device] }
|
||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
end
|
|
||||||
|
|
||||||
|
local dev = uci_s:get("wireless", self.sid, "ifname") or netid
|
||||||
|
|
||||||
|
self.netid = netid
|
||||||
self.wdev = dev
|
self.wdev = dev
|
||||||
self.iwinfo = dev and sys.wifi.getiwinfo(dev) or { }
|
self.iwinfo = dev and sys.wifi.getiwinfo(dev) or { }
|
||||||
self.iwdata = data or uci_s:get_all("wireless", self.sid) or
|
self.iwdata = data or uci_s:get_all("wireless", self.sid) or
|
||||||
|
@ -1109,7 +1110,7 @@ end
|
||||||
|
|
||||||
function wifinet.adminlink(self)
|
function wifinet.adminlink(self)
|
||||||
return dsp.build_url("admin", "network", "wireless",
|
return dsp.build_url("admin", "network", "wireless",
|
||||||
self.iwdata.device, self.wdev)
|
self.iwdata.device, self.netid)
|
||||||
end
|
end
|
||||||
|
|
||||||
function wifinet.get_network(self)
|
function wifinet.get_network(self)
|
||||||
|
|
Loading…
Reference in a new issue