diff options
Diffstat (limited to 'util/prosodyctl.lua')
-rw-r--r-- | util/prosodyctl.lua | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/util/prosodyctl.lua b/util/prosodyctl.lua index 04d58d1d..7f3ce20e 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[params.host].users; + if not(provider) or provider.name == "null" then + usermanager.initialize_host(params.host); + end + return usermanager.user_exists(params.user, params.host); end |