Software /
code /
prosody
Changeset
8997:8c4dd4375823
MUC/password: Set room password on creation if included in join stanza
This fixes room creation/joining from Gajim if a password has been set.
Otherwise the muc-occupant-pre-join event hook determines that the given
password differs from the unset password and joining is rejected, which
seems unhelpful.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sun, 08 Jul 2018 04:17:54 +0200 |
parents | 8996:2df7dc99566a |
children | 8999:a2a4c225a3f8 |
files | plugins/muc/password.lib.lua |
diffstat | 1 files changed, 8 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/plugins/muc/password.lib.lua Sun Jul 08 03:43:47 2018 +0200 +++ b/plugins/muc/password.lib.lua Sun Jul 08 04:17:54 2018 +0200 @@ -65,6 +65,14 @@ end end); +module:hook("muc-room-pre-create", function (event) + local stanza, room = event.stanza, event.room; + local muc_x = stanza:get_child("x", "http://jabber.org/protocol/muc"); + if not muc_x then return end + local password = muc_x:get_child_text("password", "http://jabber.org/protocol/muc"); + set_password(room, password); +end); + return { get = get_password; set = set_password;