From: Hannu Nyman Date: Fri, 27 Jan 2017 08:36:12 +0000 (+0200) Subject: luci-app-wol: add ability to send packet to broadcast address X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=16bbe45e95d89c61323f5a86401a8ed4287af030;p=oweals%2Fluci.git 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 --- 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 }