Software / code / prosody
Comparison
prosodyctl @ 6324:c9730926002b
prosodyctl: Improve JID splitting and normalization for adduser/passwd/deluser
| author | Matthew Wild <mwild1@gmail.com> |
|---|---|
| date | Thu, 31 Jul 2014 06:58:15 +0100 |
| parent | 6035:1b5ca55bf895 |
| child | 6325:13a43fe90d9f |
comparison
equal
deleted
inserted
replaced
| 6323:5926f01e5cd2 | 6324:c9730926002b |
|---|---|
| 266 local getchar, getpass = prosodyctl.getchar, prosodyctl.getpass; | 266 local getchar, getpass = prosodyctl.getchar, prosodyctl.getpass; |
| 267 local show_yesno = prosodyctl.show_yesno; | 267 local show_yesno = prosodyctl.show_yesno; |
| 268 local show_prompt = prosodyctl.show_prompt; | 268 local show_prompt = prosodyctl.show_prompt; |
| 269 local read_password = prosodyctl.read_password; | 269 local read_password = prosodyctl.read_password; |
| 270 | 270 |
| 271 local jid_split = require "util.jid".prepped_split; | |
| 272 | |
| 271 local prosodyctl_timeout = (config.get("*", "prosodyctl_timeout") or 5) * 2; | 273 local prosodyctl_timeout = (config.get("*", "prosodyctl_timeout") or 5) * 2; |
| 272 ----------------------- | 274 ----------------------- |
| 273 local commands = {}; | 275 local commands = {}; |
| 274 local command = arg[1]; | 276 local command = arg[1]; |
| 275 | 277 |
| 276 function commands.adduser(arg) | 278 function commands.adduser(arg) |
| 277 if not arg[1] or arg[1] == "--help" then | 279 if not arg[1] or arg[1] == "--help" then |
| 278 show_usage([[adduser JID]], [[Create the specified user account in Prosody]]); | 280 show_usage([[adduser JID]], [[Create the specified user account in Prosody]]); |
| 279 return 1; | 281 return 1; |
| 280 end | 282 end |
| 281 local user, host = arg[1]:match("([^@]+)@(.+)"); | 283 local user, host = jid_split(arg[1]); |
| 282 if not user and host then | 284 if not user and host then |
| 283 show_message [[Failed to understand JID, please supply the JID you want to create]] | 285 show_message [[Failed to understand JID, please supply the JID you want to create]] |
| 284 show_usage [[adduser user@host]] | 286 show_usage [[adduser user@host]] |
| 285 return 1; | 287 return 1; |
| 286 end | 288 end |
| 315 function commands.passwd(arg) | 317 function commands.passwd(arg) |
| 316 if not arg[1] or arg[1] == "--help" then | 318 if not arg[1] or arg[1] == "--help" then |
| 317 show_usage([[passwd JID]], [[Set the password for the specified user account in Prosody]]); | 319 show_usage([[passwd JID]], [[Set the password for the specified user account in Prosody]]); |
| 318 return 1; | 320 return 1; |
| 319 end | 321 end |
| 320 local user, host = arg[1]:match("([^@]+)@(.+)"); | 322 local user, host = jid_split(arg[1]) |
| 321 if not user and host then | 323 if not user and host then |
| 322 show_message [[Failed to understand JID, please supply the JID you want to set the password for]] | 324 show_message [[Failed to understand JID, please supply the JID you want to set the password for]] |
| 323 show_usage [[passwd user@host]] | 325 show_usage [[passwd user@host]] |
| 324 return 1; | 326 return 1; |
| 325 end | 327 end |
| 354 function commands.deluser(arg) | 356 function commands.deluser(arg) |
| 355 if not arg[1] or arg[1] == "--help" then | 357 if not arg[1] or arg[1] == "--help" then |
| 356 show_usage([[deluser JID]], [[Permanently remove the specified user account from Prosody]]); | 358 show_usage([[deluser JID]], [[Permanently remove the specified user account from Prosody]]); |
| 357 return 1; | 359 return 1; |
| 358 end | 360 end |
| 359 local user, host = arg[1]:match("([^@]+)@(.+)"); | 361 local user, host = jid_split(arg[1]); |
| 360 if not user and host then | 362 if not user and host then |
| 361 show_message [[Failed to understand JID, please supply the JID you want to set the password for]] | 363 show_message [[Failed to understand JID, please supply the JID you want to set the password for]] |
| 362 show_usage [[passwd user@host]] | 364 show_usage [[passwd user@host]] |
| 363 return 1; | 365 return 1; |
| 364 end | 366 end |