luci-app-wol: add ability to send packet to broadcast address
Add the ability to send the WOL packet to the broadcast address, if etherwake is used as the wol tool. Modified from the original idea in #975 Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
This commit is contained in:
parent
c5b84f2fba
commit
16bbe45e95
1 changed files with 11 additions and 2 deletions
|
@ -48,6 +48,13 @@ sys.net.mac_hints(function(mac, name)
|
||||||
host:value(mac, "%s (%s)" %{ mac, name })
|
host:value(mac, "%s (%s)" %{ mac, name })
|
||||||
end)
|
end)
|
||||||
|
|
||||||
|
if has_ewk then
|
||||||
|
broadcast = s:option(Flag, "broadcast",
|
||||||
|
translate("Send to broadcast address"))
|
||||||
|
if has_wol then
|
||||||
|
broadcast:depends("binary", "/usr/bin/etherwake")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
function host.write(self, s, val)
|
function host.write(self, s, val)
|
||||||
local host = luci.http.formvalue("cbid.wol.1.mac")
|
local host = luci.http.formvalue("cbid.wol.1.mac")
|
||||||
|
@ -59,8 +66,10 @@ function host.write(self, s, val)
|
||||||
|
|
||||||
if util == "/usr/bin/etherwake" then
|
if util == "/usr/bin/etherwake" then
|
||||||
local iface = luci.http.formvalue("cbid.wol.1.iface")
|
local iface = luci.http.formvalue("cbid.wol.1.iface")
|
||||||
cmd = "%s -D%s %q" %{
|
local broadcast = luci.http.formvalue("cbid.wol.1.broadcast")
|
||||||
util, (iface ~= "" and " -i %q" % iface or ""), host
|
cmd = "%s -D%s %s %q" %{
|
||||||
|
util, (iface ~= "" and " -i %q" % iface or ""),
|
||||||
|
(broadcast == "1" and " -b" or ""), host
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
cmd = "%s -v %q" %{ util, host }
|
cmd = "%s -v %q" %{ util, host }
|
||||||
|
|
Loading…
Reference in a new issue