This repository has been archived on 2024-05-11. You can view files and clone it, but cannot push or open issues or pull requests.
gluon-firmware/package/gluon-status-page/files/lib/gluon/status-page/www/cgi-bin/interfaces

25 lines
547 B
Lua
Executable File

#!/usr/bin/lua
util = require 'luci.util'
json = require 'luci.json'
fs = require 'nixio.fs'
io.write("Access-Control-Allow-Origin: *\n")
io.write("Content-type: application/json\n\n")
list = util.exec('batctl if')
interfaces = {}
for _, line in ipairs(util.split(list)) do
ifname = line:match('^(.-):')
if ifname ~= nil then
pcall(function()
local address = util.trim(fs.readfile('/sys/class/net/' .. ifname .. '/address'))
interfaces[ifname] = { address = address }
end)
end
end
io.write(json.encode(interfaces))