mod_host_guard: prevent possible traceback during host manual activation/deactivation.
--- a/mod_host_guard/mod_host_guard.lua Thu Sep 13 00:08:29 2012 +0500
+++ b/mod_host_guard/mod_host_guard.lua Wed Sep 12 19:15:45 2012 +0000
@@ -42,7 +42,7 @@
local function handle_activation (host, u)
if guard_blockall:contains(host) or guard_protect:contains(host) then
- if hosts[host] and hosts[host].events then
+ if hosts[host] and hosts[host].events and (hosts[host].modules and not hosts[host].modules["auth_anonymous"]) then
hosts[host].events.add_handler("s2sin-established", s2s_hook, 500)
hosts[host].events.add_handler("route/remote", rr_hook, 500)
hosts[host].events.add_handler("stanza/jabber:server:dialback:result", s2s_hook, 500)
@@ -57,7 +57,7 @@
local function handle_deactivation (host, u, i)
if guard_blockall:contains(host) or guard_protect:contains(host) then
- if hosts[host] and hosts[host].events then
+ if hosts[host] and hosts[host].events and (hosts[host].modules and not hosts[host].modules["auth_anonymous"]) then
hosts[host].events.remove_handler("s2sin-established", s2s_hook)
hosts[host].events.remove_handler("route/remote", rr_hook)
hosts[host].events.remove_handler("stanza/jabber:server:dialback:result", s2s_hook)