Software /
code /
prosody
Changeset
13599:54803fb5b4d4
prosodyctl: passwd: Use user:password() shell command for implementation
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Tue, 07 Jan 2025 19:25:35 +0000 |
parents | 13598:2cd43975a15c |
children | 13600:854df134274f |
files | prosodyctl |
diffstat | 1 files changed, 2 insertions(+), 31 deletions(-) [+] |
line wrap: on
line diff
--- a/prosodyctl Tue Jan 07 19:25:12 2025 +0000 +++ b/prosodyctl Tue Jan 07 19:25:35 2025 +0000 @@ -157,38 +157,9 @@ show_usage([[passwd JID]], [[Set the password for the specified user account in Prosody]]); return opts.help and 0 or 1; end - local user, host = jid_split(arg[1]); - if not user and host then - show_message [[Failed to understand JID, please supply the JID you want to set the password for]] - show_usage [[passwd user@host]] - return 1; - end - if not host then - show_message [[Please specify a JID, including a host. e.g. alice@example.com]]; - return 1; - end - - if not prosody.hosts[host] then - show_warning("The host '%s' is not listed in the configuration file (or is not enabled).", host) - show_warning("The user will not be able to log in until this is changed."); - prosody.hosts[host] = startup.make_host(host); --luacheck: ignore 122 - end - - if not prosodyctl.user_exists { user = user, host = host } then - show_message [[That user does not exist, use prosodyctl adduser to create a new user]] - return 1; - end - - local password = read_password(); - if not password then return 1; end - - local ok, msg = prosodyctl.passwd { user = user, host = host, password = password }; - - if ok then return 0; end - - show_message(error_messages[msg]) - return 1; + local shell = require "prosody.util.prosodyctl.shell"; + return shell.shell({ ("user:password(%q, nil)"):format(arg[1]) }); end function commands.deluser(arg)