From ee067c787551dc07f2bc3970b5636cdc5973da71 Mon Sep 17 00:00:00 2001 From: Matthew Wild Date: Fri, 22 Mar 2013 11:24:54 +0000 Subject: hostmanager: Use rawget to check for activated hosts to prevent recursion in dynamic host loaders --- core/hostmanager.lua | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/hostmanager.lua b/core/hostmanager.lua index 800f7b34..40401e48 100644 --- a/core/hostmanager.lua +++ b/core/hostmanager.lua @@ -25,7 +25,7 @@ end local incoming_s2s = _G.prosody.incoming_s2s; local core_route_stanza = _G.prosody.core_route_stanza; -local pairs, select = pairs, select; +local pairs, select, rawget = pairs, select, rawget; local tostring, type = tostring, type; module "hostmanager" @@ -67,7 +67,7 @@ local function host_send(stanza) end function activate(host, host_config) - if hosts[host] then return nil, "The host "..host.." is already activated"; end + if rawget(hosts, host) then return nil, "The host "..host.." is already activated"; end host_config = host_config or configmanager.getconfig()[host]; if not host_config then return nil, "Couldn't find the host "..tostring(host).." defined in the current config"; end local host_session = { -- cgit v1.2.3