What steps will reproduce the problem? ----- BEGIN TEST CASE ----- [Client] FirstWitch jid: 20d096b9-0fa4-4aef-b59e-47b8ba631a0f@localhost/30325869-ce83-4762-a5fb-b9e8980f1226 password: password [Client] SecondWitch jid: b13b0470-afcf-412c-8602-e94871f7d763@localhost/d907543f-9d0f-40a8-9179-116046d2c6d8 password: password --------- FirstWitch connects SecondWitch connects FirstWitch sends: <presence id="xzN3yXkYYWalnfy0KZlto"/> SecondWitch sends: <presence id="xy/uVIXWcvreLC25cfuoH"/> FirstWitch receives: <presence id="xzN3yXkYYWalnfy0KZlto" from="20d096b9-0fa4-4aef-b59e-47b8ba631a0f@localhost/30325869-ce83-4762-a5fb-b9e8980f1226"/> SecondWitch receives: <presence id="xy/uVIXWcvreLC25cfuoH" from="b13b0470-afcf-412c-8602-e94871f7d763@localhost/d907543f-9d0f-40a8-9179-116046d2c6d8"/> FirstWitch sends: <presence id="xbpb41DsrethZHEMckj/w" to="coven@conference.localhost/firstwitch"> <x xmlns="http://jabber.org/protocol/muc"/> </presence> FirstWitch receives: <presence id="xbpb41DsrethZHEMckj/w" to="20d096b9-0fa4-4aef-b59e-47b8ba631a0f@localhost/30325869-ce83-4762-a5fb-b9e8980f1226" from="coven@conference.localhost/firstwitch"> <x xmlns="http://jabber.org/protocol/muc#user"> <status code='201'/> <item jid="20d096b9-0fa4-4aef-b59e-47b8ba631a0f@localhost/30325869-ce83-4762-a5fb-b9e8980f1226" affiliation="owner" role="moderator"/> <status code="110"/> </x> </presence> SecondWitch sends: <presence id="xxX6H/JAHm0tygmprVZ1j" to="coven@conference.localhost/secondwitch"> <x xmlns="http://jabber.org/protocol/muc"/> </presence> SecondWitch receives: <presence id="xbpb41DsrethZHEMckj/w" to="b13b0470-afcf-412c-8602-e94871f7d763@localhost/d907543f-9d0f-40a8-9179-116046d2c6d8" from="coven@conference.localhost/firstwitch"> <x xmlns="http://jabber.org/protocol/muc#user"> <item role="moderator" affiliation="owner"/> </x> </presence> SecondWitch receives: <presence id="xxX6H/JAHm0tygmprVZ1j" to="b13b0470-afcf-412c-8602-e94871f7d763@localhost/d907543f-9d0f-40a8-9179-116046d2c6d8" from="coven@conference.localhost/secondwitch"> <x xmlns="http://jabber.org/protocol/muc#user"> <item jid="b13b0470-afcf-412c-8602-e94871f7d763@localhost/d907543f-9d0f-40a8-9179-116046d2c6d8" affiliation="none" role="participant"/> <status code="110"/> </x> </presence> FirstWitch receives: <presence id="xxX6H/JAHm0tygmprVZ1j" to="20d096b9-0fa4-4aef-b59e-47b8ba631a0f@localhost/30325869-ce83-4762-a5fb-b9e8980f1226" from="coven@conference.localhost/secondwitch"> <x xmlns="http://jabber.org/protocol/muc#user"> <item jid="b13b0470-afcf-412c-8602-e94871f7d763@localhost/d907543f-9d0f-40a8-9179-116046d2c6d8" affiliation="none" role="participant"/> </x> </presence> FirstWitch sends: <iq type="set" id="xihYXZaKY4Xrq+TSsZbXy" to="coven@conference.localhost"> <query xmlns="http://jabber.org/protocol/muc#admin"> <item nick="secondwitch" role="none"> <reason>Thou art no real witch</reason> </item> </query> </iq> SecondWitch receives: <presence type="unavailable" to="b13b0470-afcf-412c-8602-e94871f7d763@localhost/d907543f-9d0f-40a8-9179-116046d2c6d8" from="coven@conference.localhost/secondwitch"> <x xmlns="http://jabber.org/protocol/muc#user"> <status code="307"/> <item jid="b13b0470-afcf-412c-8602-e94871f7d763@localhost/d907543f-9d0f-40a8-9179-116046d2c6d8" affiliation="none" role="none"> <actor nick="firstwitch"/> <reason>Thou art no real witch</reason> </item> <status code="110"/> </x> </presence> FirstWitch receives: <presence type="unavailable" to="20d096b9-0fa4-4aef-b59e-47b8ba631a0f@localhost/30325869-ce83-4762-a5fb-b9e8980f1226" from="coven@conference.localhost/secondwitch"> <x xmlns="http://jabber.org/protocol/muc#user"> <item jid="b13b0470-afcf-412c-8602-e94871f7d763@localhost/d907543f-9d0f-40a8-9179-116046d2c6d8" affiliation="none" role="none"> <actor jid="20d096b9-0fa4-4aef-b59e-47b8ba631a0f@localhost/30325869-ce83-4762-a5fb-b9e8980f1226" nick="firstwitch"/> <reason>Thou art no real witch</reason> </item> <status code="307"/> </x> </presence> FirstWitch receives: <iq id="xihYXZaKY4Xrq+TSsZbXy" type="result" to="20d096b9-0fa4-4aef-b59e-47b8ba631a0f@localhost/30325869-ce83-4762-a5fb-b9e8980f1226" from="coven@conference.localhost"/> ----- END TEST CASE ----- What is the expected output? What do you see instead? The test should pass, as per Example 92 in XEP-0045 (<https://xmpp.org/extensions/xep-0045.html#example-92>). What version of the product are you using? On what operating system? Trunk (8169:a6574fdf8734) on Linux. Please provide any additional information below. Found via aioxmpp test suite nightly run.
Wait what, was #939 a client bug then?
Well, I have example 92 on my side ;-). Even though #939 did have a slightly different situation (error vs. actual kick).
For the record: I think that a kick due to service issues should also have the 307 status code.
Reverted the #939 change in https://hg.prosody.im/trunk/rev/627689c058aa Test passes with slight adjustment to the order of children to <x xmlns="http://jabber.org/protocol/muc#user"> in the last presence.
What steps will reproduce the problem? ----- BEGIN TEST CASE ----- [Client] FirstWitch jid: 20d096b9-0fa4-4aef-b59e-47b8ba631a0f@localhost/30325869-ce83-4762-a5fb-b9e8980f1226 password: password [Client] SecondWitch jid: b13b0470-afcf-412c-8602-e94871f7d763@localhost/d907543f-9d0f-40a8-9179-116046d2c6d8 password: password --------- FirstWitch connects SecondWitch connects FirstWitch sends: <presence id="xzN3yXkYYWalnfy0KZlto"/> SecondWitch sends: <presence id="xy/uVIXWcvreLC25cfuoH"/> FirstWitch receives: <presence id="xzN3yXkYYWalnfy0KZlto" from="20d096b9-0fa4-4aef-b59e-47b8ba631a0f@localhost/30325869-ce83-4762-a5fb-b9e8980f1226"/> SecondWitch receives: <presence id="xy/uVIXWcvreLC25cfuoH" from="b13b0470-afcf-412c-8602-e94871f7d763@localhost/d907543f-9d0f-40a8-9179-116046d2c6d8"/> FirstWitch sends: <presence id="xbpb41DsrethZHEMckj/w" to="coven@conference.localhost/firstwitch"> <x xmlns="http://jabber.org/protocol/muc"/> </presence> FirstWitch receives: <presence id="xbpb41DsrethZHEMckj/w" to="20d096b9-0fa4-4aef-b59e-47b8ba631a0f@localhost/30325869-ce83-4762-a5fb-b9e8980f1226" from="coven@conference.localhost/firstwitch"> <x xmlns="http://jabber.org/protocol/muc#user"> <status code='201'/> <item jid="20d096b9-0fa4-4aef-b59e-47b8ba631a0f@localhost/30325869-ce83-4762-a5fb-b9e8980f1226" affiliation="owner" role="moderator"/> <status code="110"/> </x> </presence> SecondWitch sends: <presence id="xxX6H/JAHm0tygmprVZ1j" to="coven@conference.localhost/secondwitch"> <x xmlns="http://jabber.org/protocol/muc"/> </presence> SecondWitch receives: <presence id="xbpb41DsrethZHEMckj/w" to="b13b0470-afcf-412c-8602-e94871f7d763@localhost/d907543f-9d0f-40a8-9179-116046d2c6d8" from="coven@conference.localhost/firstwitch"> <x xmlns="http://jabber.org/protocol/muc#user"> <item role="moderator" affiliation="owner"/> </x> </presence> SecondWitch receives: <presence id="xxX6H/JAHm0tygmprVZ1j" to="b13b0470-afcf-412c-8602-e94871f7d763@localhost/d907543f-9d0f-40a8-9179-116046d2c6d8" from="coven@conference.localhost/secondwitch"> <x xmlns="http://jabber.org/protocol/muc#user"> <item jid="b13b0470-afcf-412c-8602-e94871f7d763@localhost/d907543f-9d0f-40a8-9179-116046d2c6d8" affiliation="none" role="participant"/> <status code="110"/> </x> </presence> FirstWitch receives: <presence id="xxX6H/JAHm0tygmprVZ1j" to="20d096b9-0fa4-4aef-b59e-47b8ba631a0f@localhost/30325869-ce83-4762-a5fb-b9e8980f1226" from="coven@conference.localhost/secondwitch"> <x xmlns="http://jabber.org/protocol/muc#user"> <item jid="b13b0470-afcf-412c-8602-e94871f7d763@localhost/d907543f-9d0f-40a8-9179-116046d2c6d8" affiliation="none" role="participant"/> </x> </presence> FirstWitch sends: <iq type="set" id="xihYXZaKY4Xrq+TSsZbXy" to="coven@conference.localhost"> <query xmlns="http://jabber.org/protocol/muc#admin"> <item nick="secondwitch" role="none"> <reason>Thou art no real witch</reason> </item> </query> </iq> SecondWitch receives: <presence type="unavailable" to="b13b0470-afcf-412c-8602-e94871f7d763@localhost/d907543f-9d0f-40a8-9179-116046d2c6d8" from="coven@conference.localhost/secondwitch"> <x xmlns="http://jabber.org/protocol/muc#user"> <status code="307"/> <item jid="b13b0470-afcf-412c-8602-e94871f7d763@localhost/d907543f-9d0f-40a8-9179-116046d2c6d8" affiliation="none" role="none"> <actor nick="firstwitch"/> <reason>Thou art no real witch</reason> </item> <status code="110"/> </x> </presence> FirstWitch receives: <presence type="unavailable" to="20d096b9-0fa4-4aef-b59e-47b8ba631a0f@localhost/30325869-ce83-4762-a5fb-b9e8980f1226" from="coven@conference.localhost/secondwitch"> <x xmlns="http://jabber.org/protocol/muc#user"> <item jid="b13b0470-afcf-412c-8602-e94871f7d763@localhost/d907543f-9d0f-40a8-9179-116046d2c6d8" affiliation="none" role="none"> <actor jid="20d096b9-0fa4-4aef-b59e-47b8ba631a0f@localhost/30325869-ce83-4762-a5fb-b9e8980f1226" nick="firstwitch"/> <reason>Thou art no real witch</reason> </item> <status code="307"/> </x> </presence> FirstWitch receives: <iq id="xihYXZaKY4Xrq+TSsZbXy" type="result" to="20d096b9-0fa4-4aef-b59e-47b8ba631a0f@localhost/30325869-ce83-4762-a5fb-b9e8980f1226" from="coven@conference.localhost"/> ----- END TEST CASE ----- What is the expected output? What do you see instead? The test should pass, as per Example 92 in XEP-0045 (<https://xmpp.org/extensions/xep-0045.html#example-92>). What version of the product are you using? On what operating system? Trunk (8169:a6574fdf8734) on Linux. Please provide any additional information below. Found via aioxmpp test suite nightly run.
Wait what, was #939 a client bug then?
Well, I have example 92 on my side ;-). Even though #939 did have a slightly different situation (error vs. actual kick).
For the record: I think that a kick due to service issues should also have the 307 status code.
Reverted the #939 change in https://hg.prosody.im/trunk/rev/627689c058aa Test passes with slight adjustment to the order of children to <x xmlns="http://jabber.org/protocol/muc#user"> in the last presence.
Changes