aboutsummaryrefslogtreecommitdiffstats
path: root/util
diff options
context:
space:
mode:
authorMatthew Wild <mwild1@gmail.com>2010-06-29 19:18:07 +0100
committerMatthew Wild <mwild1@gmail.com>2010-06-29 19:18:07 +0100
commit9e70620d2631fff90974f2c40f435b15d8e386b1 (patch)
tree6fdec67e7e1ccc99bf3cd83b47170ec790f2d505 /util
parentaa68dc887d1ee2480bcebeed9170f0d696134776 (diff)
downloadprosody-9e70620d2631fff90974f2c40f435b15d8e386b1.tar.gz
prosody-9e70620d2631fff90974f2c40f435b15d8e386b1.zip
util.prosodyctl: Initialize the host's auth provider if necessary (thanks johnny, and all the other people whom this hindered :) )
Diffstat (limited to 'util')
-rw-r--r--util/prosodyctl.lua12
1 files changed, 12 insertions, 0 deletions
diff --git a/util/prosodyctl.lua b/util/prosodyctl.lua
index 04d58d1d..1be67883 100644
--- a/util/prosodyctl.lua
+++ b/util/prosodyctl.lua
@@ -21,6 +21,8 @@ local tostring, tonumber = tostring, tonumber;
local CFG_SOURCEDIR = _G.CFG_SOURCEDIR;
+local prosody = prosody;
+
module "prosodyctl"
function adduser(params)
@@ -30,6 +32,11 @@ function adduser(params)
elseif not host then
return false, "invalid-hostname";
end
+
+ local provider = prosody.hosts[host].users;
+ if not(provider) or provider.name == "null" then
+ usermanager.initialize_host(host);
+ end
local ok = usermanager.create_user(user, password, host);
if not ok then
@@ -39,6 +46,11 @@ function adduser(params)
end
function user_exists(params)
+ local provider = prosody.hosts[host].users;
+ if not(provider) or provider.name == "null" then
+ usermanager.initialize_host(host);
+ end
+
return usermanager.user_exists(params.user, params.host);
end