summaryrefslogtreecommitdiff
path: root/src/modules/exec.lua
diff options
context:
space:
mode:
Diffstat (limited to 'src/modules/exec.lua')
-rw-r--r--src/modules/exec.lua9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/modules/exec.lua b/src/modules/exec.lua
index 239248f..14a8856 100644
--- a/src/modules/exec.lua
+++ b/src/modules/exec.lua
@@ -131,10 +131,19 @@ function exec:new(config)
end
function client:cleanup()
util.kill(self.pid)
+ rawio.close(in_handle.fd)
+ rawio.close(out_handle.fd)
end
in_handle.client_instance = client
out_handle.client_instance = client
+ function child:cleanup(reason, status)
+ log.printf(log.INFO, "cleanup for child %d called (after %s(%s))", self.pid, reason, status)
+ -- TODO: restart programm after it stopped?
+ module_list:unregister(inst)
+ client_list:unregister(client)
+ end
+
function inst:cleanup()
client_list:unregister_by_module(self)
end