+else
+ -- Not going to daemonize, so write the pid of this process
+ write_pidfile();
+end
+
+module:add_event_hook("server-stopped", remove_pidfile);
+
+-- Set signal handlers
+if signal.signal then
+ signal.signal("SIGTERM", function ()
+ module:log("warn", "Received SIGTERM");
+ signal.signal("SIGTERM", function () end); -- Fixes us getting into some kind of loop
+ prosody.unlock_globals();
+ prosody.shutdown("Received SIGTERM");
+ prosody.lock_globals();
+ end);
+
+ signal.signal("SIGHUP", function ()
+ module:log("info", "Received SIGHUP");
+ prosody.reload_config();
+ prosody.reopen_logfiles();
+ end);
+
+ signal.signal("SIGINT", function ()
+ module:log("info", "Received SIGINT");
+ signal.signal("SIGINT", function () end); -- Fix to not loop
+ prosody.unlock_globals();
+ prosody.shutdown("Received SIGINT");
+ prosody.lock_globals();
+ end);