Software /
code /
prosody
File
spec/scansion/muc_nickname_change.scs @ 12187:94253e02d47d
mod_http: Limit unencrypted http port (5280) to loopback by default
Since accessing this port directly over the wider Internet is unlikely
to intentional anymore. Most uses will likely be by reverse proxies, by
mistake or because of trouble configuring HTTPS.
Blocking mistaken uses is just a good thing, letting users send
potentially private things unencrypted tends to be Strongly Discouraged
these days.
Many reverse proxy setups operate over loopback, so listening there
instead of all interfaces is a net improvement.
Improved automatic certificate location and SNI support has mostly
eliminated the need for manual certificate configuration so HTTPS should
Just Work once certificates have been provided.
For local testing during development, connecting over loopback is likely
fine as well. When really needed, `http_interfaces` can still be set.
Suggested by Link Mauve
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sat, 15 Jan 2022 15:13:41 +0100 |
parent | 10435:6e3fa523c969 |
line wrap: on
line source
# MUC: Change nickname # Make sure a role is not reset, see #1466 [Client] Romeo jid: user@localhost password: password [Client] Juliet jid: user2@localhost password: password ----- Romeo connects Romeo sends: <presence to="room@conference.localhost/Romeo"> <x xmlns="http://jabber.org/protocol/muc"/> </presence> Romeo receives: <presence from='room@conference.localhost/Romeo'> <x xmlns='http://jabber.org/protocol/muc#user'> <status code='201'/> <item jid="${Romeo's full JID}" affiliation='owner' role='moderator'/> <status code='110'/> </x> </presence> Romeo receives: <message type='groupchat' from='room@conference.localhost'><subject/></message> Romeo sends: <iq id='config1' to='room@conference.localhost' type='set'> <query xmlns='http://jabber.org/protocol/muc#owner'> <x xmlns='jabber:x:data' type='submit'> <field var='FORM_TYPE'> <value>http://jabber.org/protocol/muc#roomconfig</value> </field> <field var='muc#roomconfig_moderatedroom'> <value>1</value> </field> </x> </query> </iq> Romeo receives: <iq id="config1" from="room@conference.localhost" type="result"/> Juliet connects Juliet sends: <presence to="room@conference.localhost/Juliet"> <x xmlns="http://jabber.org/protocol/muc"/> </presence> Juliet receives: <presence from='room@conference.localhost/Romeo'> <x xmlns='http://jabber.org/protocol/muc#user'> <item role='moderator' xmlns='http://jabber.org/protocol/muc#user' affiliation='owner'/> </x> </presence> Juliet receives: <presence from='room@conference.localhost/Juliet'> <x xmlns='http://jabber.org/protocol/muc#user'> <item jid="${Juliet's full JID}" affiliation='none' role='visitor'/> <status code='110'/> </x> </presence> Juliet receives: <message type='groupchat' from='room@conference.localhost'><subject/></message> Romeo receives: <presence from='room@conference.localhost/Juliet'> <x xmlns='http://jabber.org/protocol/muc#user'> <item affiliation="none" role="visitor" jid="${Juliet's full JID}"/> </x> </presence> Romeo sends: <iq id='config1' to='room@conference.localhost' type='set'> <query xmlns='http://jabber.org/protocol/muc#owner'> <x xmlns='jabber:x:data' type='submit'> <field var='FORM_TYPE'> <value>http://jabber.org/protocol/muc#roomconfig</value> </field> <field var='muc#roomconfig_moderatedroom'> <value>0</value> </field> </x> </query> </iq> Romeo receives: <iq id="config1" from="room@conference.localhost" type="result"/> Juliet receives: <message type='groupchat' from='room@conference.localhost'> <x xmlns='http://jabber.org/protocol/muc#user'> <status xmlns='http://jabber.org/protocol/muc#user' code='104'/> </x> </message> Juliet sends: <presence to="room@conference.localhost/Juliet2"> </presence> Juliet receives: <presence from='room@conference.localhost/Juliet' type='unavailable'> <x xmlns='http://jabber.org/protocol/muc#user'> <status code='303'/> <item nick='Juliet2' jid="${Juliet's full JID}" affiliation='none' role='visitor'/> <status code='110'/> </x> </presence> Juliet receives: <presence from='room@conference.localhost/Juliet2'> <x xmlns='http://jabber.org/protocol/muc#user'> <item jid="${Juliet's full JID}" affiliation='none' role='visitor'/> <status code='110'/> </x> </presence>