gluon-core: get LAN and WAN interfaces from board.json

Instead of looking at the initial UCI config, we can read this
information from board.json.
This commit is contained in:
Matthias Schiffer 2020-06-14 12:11:32 +02:00
parent 2891454f16
commit 5e44f7cdde
No known key found for this signature in database
GPG Key ID: 16EF3F64CB201D9C

View File

@ -11,9 +11,12 @@ end
local platform = require 'gluon.platform' local platform = require 'gluon.platform'
local site = require 'gluon.site' local site = require 'gluon.site'
local json = require 'jsonc'
local uci = require('simple-uci').cursor() local uci = require('simple-uci').cursor()
local unistd = require 'posix.unistd' local unistd = require 'posix.unistd'
local board_data = json.load('/etc/board.json')
local network_data = (board_data or {}).network
local function iface_exists(ifaces) local function iface_exists(ifaces)
if not ifaces then return nil end if not ifaces then return nil end
@ -26,8 +29,8 @@ local function iface_exists(ifaces)
end end
local lan_ifname = iface_exists(uci:get('network', 'lan', 'ifname')) local lan_ifname = iface_exists((network_data.lan or {}).ifname)
local wan_ifname = iface_exists(uci:get('network', 'wan', 'ifname')) local wan_ifname = iface_exists((network_data.wan or {}).ifname)
if platform.match('ar71xx', 'generic', { if platform.match('ar71xx', 'generic', {
'cpe210', 'cpe210',