aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/mod_watchregistrations.lua
diff options
context:
space:
mode:
authorMatthew Wild <mwild1@gmail.com>2012-05-24 18:52:47 +0100
committerMatthew Wild <mwild1@gmail.com>2012-05-24 18:52:47 +0100
commita3b34886029ba0f7b966ef37ce13acd4001c6e56 (patch)
treec763bc351d4534e151b527fbff03ccae9d1e500f /plugins/mod_watchregistrations.lua
parent8410f318d2e5e65b8b71ecbed614060c73285969 (diff)
downloadprosody-a3b34886029ba0f7b966ef37ce13acd4001c6e56.tar.gz
prosody-a3b34886029ba0f7b966ef37ce13acd4001c6e56.zip
mod_watchregistrations: Convert JID list to a set, and prep before use to fix traceback on invalid JIDs (thanks sMi)
Diffstat (limited to 'plugins/mod_watchregistrations.lua')
-rw-r--r--plugins/mod_watchregistrations.lua5
1 files changed, 3 insertions, 2 deletions
diff --git a/plugins/mod_watchregistrations.lua b/plugins/mod_watchregistrations.lua
index 42f9c017..ef18d713 100644
--- a/plugins/mod_watchregistrations.lua
+++ b/plugins/mod_watchregistrations.lua
@@ -8,8 +8,9 @@
local host = module:get_host();
+local jid_prep = require "util.jid".prep;
-local registration_watchers = module:get_option("registration_watchers", module:get_option("admins", {}));
+local registration_watchers = module:get_option_set("registration_watchers", module:get_option("admins", {})) / jid_prep;
local registration_notification = module:get_option("registration_notification", "User $username just registered on $host from $ip");
local st = require "util.stanza";
@@ -21,7 +22,7 @@ module:hook("user-registered", function (user)
:text(registration_notification:gsub("%$(%w+)", function (v)
return user[v] or user.session and user.session[v] or nil;
end));
- for _, jid in ipairs(registration_watchers) do
+ for jid in registration_watchers do
module:log("debug", "Notifying %s", jid);
message.attr.to = jid;
core_route_stanza(hosts[host], message);