Changeset

4909:01bfb9a76660

mod_watchregistrations: Convert JID list to a set, and prep before use to fix traceback on invalid JIDs (thanks sMi)
author Matthew Wild <mwild1@gmail.com>
date Thu, 24 May 2012 18:52:47 +0100
parents 4908:8c5b5ebaacb0
children 4910:e5ec60dfb202
files plugins/mod_watchregistrations.lua
diffstat 1 files changed, 3 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/plugins/mod_watchregistrations.lua	Thu May 24 18:51:18 2012 +0100
+++ b/plugins/mod_watchregistrations.lua	Thu May 24 18:52:47 2012 +0100
@@ -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 @@
 			: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);