diff options
author | Hannu Nyman <hannu.nyman@iki.fi> | 2017-01-27 10:36:12 +0200 |
---|---|---|
committer | Hannu Nyman <hannu.nyman@iki.fi> | 2017-01-27 10:37:54 +0200 |
commit | 16bbe45e95d89c61323f5a86401a8ed4287af030 (patch) | |
tree | 4df6d0a8f29ac12916007361322f6eeb87ecdbe2 /applications | |
parent | c5b84f2fba12d4779677840c9e2186794f6f85b2 (diff) |
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>
Diffstat (limited to 'applications')
-rw-r--r-- | applications/luci-app-wol/luasrc/model/cbi/wol.lua | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/applications/luci-app-wol/luasrc/model/cbi/wol.lua b/applications/luci-app-wol/luasrc/model/cbi/wol.lua index e87cac3dc..ec6a1be2a 100644 --- a/applications/luci-app-wol/luasrc/model/cbi/wol.lua +++ b/applications/luci-app-wol/luasrc/model/cbi/wol.lua @@ -48,6 +48,13 @@ sys.net.mac_hints(function(mac, name) host:value(mac, "%s (%s)" %{ mac, name }) 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) 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 local iface = luci.http.formvalue("cbid.wol.1.iface") - cmd = "%s -D%s %q" %{ - util, (iface ~= "" and " -i %q" % iface or ""), host + local broadcast = luci.http.formvalue("cbid.wol.1.broadcast") + cmd = "%s -D%s %s %q" %{ + util, (iface ~= "" and " -i %q" % iface or ""), + (broadcast == "1" and " -b" or ""), host } else cmd = "%s -v %q" %{ util, host } |