From f56aaf1ba149176fe65254960cba957843c4ca10 Mon Sep 17 00:00:00 2001 From: Kim Alvefur Date: Fri, 11 Feb 2022 21:36:53 +0100 Subject: mod_c2s,mod_s2s: Disable and close port listeners before closing sessions This ensures no new clients can start connecting during shutdown --- plugins/mod_c2s.lua | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'plugins/mod_c2s.lua') diff --git a/plugins/mod_c2s.lua b/plugins/mod_c2s.lua index c9aae3bc..7c5c4182 100644 --- a/plugins/mod_c2s.lua +++ b/plugins/mod_c2s.lua @@ -423,6 +423,13 @@ end module:hook("c2s-read-timeout", keepalive, -1); module:hook("server-stopping", function(event) + -- Close ports + local pm = require "core.portmanager"; + for _, netservice in pairs(module.items["net-provider"]) do + pm.unregister_service(netservice.name, netservice); + end + + -- Close sessions local reason = event.reason; for _, session in pairs(sessions) do session:close{ condition = "system-shutdown", text = reason }; -- cgit v1.2.3