summaryrefslogtreecommitdiff
path: root/mode-leds.lua
diff options
context:
space:
mode:
Diffstat (limited to 'mode-leds.lua')
-rw-r--r--mode-leds.lua23
1 files changed, 21 insertions, 2 deletions
diff --git a/mode-leds.lua b/mode-leds.lua
index 51568f8..1b43184 100644
--- a/mode-leds.lua
+++ b/mode-leds.lua
@@ -21,14 +21,20 @@
socket = require("socket")
+function process_cmd(message)
+ log.printf(log.DEBUG, "received message: '%s'", message)
+
+ return 0
+end
+
function main_loop(opt)
log.printf(log.NOTICE, "main_loop started")
local sig = signal.init()
-
+ local cmdfd = cmd.init()
local return_value = 0
while return_value == 0 do
- local readable, _, err = socket.select({ sig }, nil)
+ local readable, _, err = socket.select({ sig , cmdfd }, nil)
if(err) then
log.printf(log.ERROR, "select returned with error: %s", err)
return_value = -1
@@ -37,6 +43,19 @@ function main_loop(opt)
if(input == sig) then
return_value = signal.handle()
if(return_value == 1) then break end
+ else
+ if(input == cmdfd) then
+ return_value = cmd.recv_data(process_cmd)
+ if(return_value == 2) then
+ log.printf(log.ERROR, "connection to server lost, exitting")
+ return_value = -1
+ end
+ if(return_value ~= 0) then break end
+ else
+ log.printf(log.ERROR, "select returned invalid handle??")
+ return_value = -1
+ break;
+ end
end
end
end