local table = require "table"
local nixio = require "nixio"
local fs = require "nixio.fs"
-local iwinfo = require "iwinfo"
local uci = require "luci.model.uci"
local luci = {}
luci.util = require "luci.util"
luci.ip = require "luci.ip"
-local tonumber, ipairs, pairs, pcall, type, next, setmetatable =
- tonumber, ipairs, pairs, pcall, type, next, setmetatable
+local tonumber, ipairs, pairs, pcall, type, next, setmetatable, require =
+ tonumber, ipairs, pairs, pcall, type, next, setmetatable, require
--- LuCI Linux and POSIX system utilities.
-- @return String containg the return the output of the command
exec = luci.util.exec
---- Invoke the luci-flash executable to write an image to the flash memory.
--- @param image Local path or URL to image file
--- @param kpattern Pattern of files to keep over flash process
--- @return Return value of os.execute()
-function flash(image, kpattern)
- local cmd = "luci-flash "
- if kpattern then
- cmd = cmd .. "-k '" .. kpattern:gsub("'", "") .. "' "
- end
- cmd = cmd .. "'" .. image:gsub("'", "") .. "' >/dev/null 2>&1"
-
- return os.execute(cmd)
-end
-
--- Retrieve information about currently mounted file systems.
-- @return Table containing mount information
function mounts()
-- @param ifname String containing the interface name
-- @return A wrapped iwinfo object instance
function wifi.getiwinfo(ifname)
+ local iwinfo = require "iwinfo"
+
if ifname then
local c = 0
local u = uci.cursor_state()