Software /
code /
prosody
File
spec/scansion/server_contact_info.scs @ 12729:73a45ba6e3f1
muc: Re-allow non-admins to configure persistence (thanks Meaz)
Non-admins don't have a role on MUC services by default. Not even
prosody:user. This meant they had no :create-persistent-room permission, even
if muc_room_allow_persistent was true (the default).
Now we only check the role permissions if persistent room creation is
restricted, otherwise we skip any permission checks, just like previous
versions.
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Wed, 28 Sep 2022 17:47:00 +0100 |
parent | 11583:4ee7a6a8753e |
line wrap: on
line source
# XEP-0157: Contact Addresses for XMPP Services # mod_server_contact_info [Client] Romeo jid: romeo@localhost password: password ----- Romeo connects Romeo sends: <iq type='get' id='lx2' to='localhost'> <query xmlns='http://jabber.org/protocol/disco#info'/> </iq> # Ignore other disco#info features, identities etc Romeo receives: <iq from='localhost' id='lx2' type='result'> <query xmlns='http://jabber.org/protocol/disco#info' scansion:strict='false'> <x xmlns='jabber:x:data' type='result'> <field type='hidden' var='FORM_TYPE'> <value>http://jabber.org/network/serverinfo</value> </field> <field type='list-multi' var='abuse-addresses'> <value>mailto:abuse@localhost</value> <value>xmpp:abuse@localhost</value> </field> <field type='list-multi' var='admin-addresses'> <value>mailto:admin@localhost</value> <value>xmpp:admin@localhost</value> </field> <field type='list-multi' var='feedback-addresses'> <value>http://localhost/feedback.html</value> <value>mailto:feedback@localhost</value> <value>xmpp:feedback@localhost</value> </field> <field type='list-multi' var='sales-addresses'> <value>xmpp:sales@localhost</value> </field> <field type='list-multi' var='security-addresses'> <value>xmpp:security@localhost</value> </field> <field type='list-multi' var='status-addresses'> <value>gopher://status.localhost</value> </field> <field type='list-multi' var='support-addresses'> <value>https://localhost/support.html</value> <value>xmpp:support@localhost</value> </field> </x> </query> </iq> Romeo sends: <iq type='get' id='lx2' to='conference.localhost'> <query xmlns='http://jabber.org/protocol/disco#info'/> </iq> <iq from='localhost' id='lx2' type='result'> <query xmlns='http://jabber.org/protocol/disco#info' scansion:strict='false'> <x xmlns='jabber:x:data' type='result'> <field type='hidden' var='FORM_TYPE'> <value>http://jabber.org/network/serverinfo</value> </field> <field type='list-multi' var='abuse-addresses'/> <field type='list-multi' var='admin-addresses'> <value>xmpp:admin@localhost</value> </field> <field type='list-multi' var='feedback-addresses'/> <field type='list-multi' var='sales-addresses'/> <field type='list-multi' var='security-addresses'/> <field type='list-multi' var='status-addresses'/> <field type='list-multi' var='support-addresses'/> </x> </query> </iq> Romeo disconnects