Earlier today, this check was triggered (see the anonymized log below) through the broadcast of a presence stanza.
It should be safe to simply overwrite the 'from' address of a presence stanza stored in a 'MUCRole' with the associated role address. All usages that I could track down either expect that, or don't care.
2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl-Routing stanza:<iq id="01ded3bc-ee13-4dd3-9ad0-b6464546f723:sendIQ"to="chatroom@conference.example.com/John Doe" type="get" from="johndoe@example.org/client-based-resource-identifier"><ping xmlns="urn:xmpp:ping"></ping></iq>2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl-The stanza is a normal packet that should possibly be sent tothe room.2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl-Stanza recipient: chatroom@conference.example.com/JohnDoe, room name: pade, sender: johndoe@example.org/client-based-resource-identifier
2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl-Stanza is a regular MUC stanza.2020.12.2613:16:53 DEBUG [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.LocalMUCUser-Ignoring stanza received from a non-occupant of 'pade':<iq id="01ded3bc-ee13-4dd3-9ad0-b6464546f723:sendIQ"to="chatroom@conference.example.com/John Doe" type="get" from="johndoe@example.org/client-based-resource-identifier"><ping xmlns="urn:xmpp:ping"></ping
2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl-Routing stanza:<iq id="0842cd0d-d8b8-4972-b415-ee2277eef49f:sendIQ"to="open_chat@conference.igniterealtime.org/John Doe" type="get" from="johndoe@example.org/client-based-resource-identifier"><ping xmlns="urn:xmpp:ping"></ping></iq>2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl-The stanza is a normal packet that should possibly be sent tothe room.2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl-Stanza recipient: open_chat@conference.igniterealtime.org/JohnDoe, room name: open_chat, sender: johndoe@example.org/client-based-resource-identifier
2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl-Stanza is a regular MUC stanza.2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.LocalMUCUser-User'johndoe@example.org/client-based-resource-identifier' is sending an IQ 'ping'toitself.See XEP-0410: MUC Self-Ping(Schrödinger's Chat).2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl-Routing stanza:<iq from="johndoe@example.org/client-based-resource-identifier" id="e4784daf-9ed7-4470-b5d5-0030747e50b1:sendIQ"to="chatroom@conference.example.com" type="get"><query xmlns="http://jabber.org/protocol/disco#info"></query></iq>2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl-Done processing IQ stanza.2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl-Routing stanza:<presence from="johndoe@example.org/client-based-resource-identifier"to="chatroom@conference.example.com/John Doe"><x xmlns="http://jabber.org/protocol/muc"><history maxstanzas="0"/></x></presence>2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl-The stanza is a normal packet that should possibly be sent tothe room.2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl-Stanza recipient: chatroom@conference.example.com/JohnDoe, room name: pade, sender: johndoe@example.org/client-based-resource-identifier
2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl-Stanza is a regular MUC stanza.2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.LocalMUCUser-Processing join request from 'johndoe@example.org/client-based-resource-identifier'for room 'pade'2020.12.2613:16:53 DEBUG [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.LocalMUCRoom-User'johndoe@example.org/client-based-resource-identifier' attempts tojoin room 'chatroom@conference.example.com' using nickname 'John Doe'.2020.12.2613:16:53 DEBUG [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.LocalMUCRoom-User'johndoe@example.org/client-based-resource-identifier' role and affiliation in room 'chatroom@conference.example.com are determined tobe: participant, none
2020.12.2613:16:53 DEBUG [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.LocalMUCRoom-Checking all preconditions for user 'johndoe@example.org/client-based-resource-identifier'tojoin room 'chatroom@conference.example.com'.2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.LocalMUCRoom- PASS Room join precondition 'johndoegate':User'johndoe@example.org/client-based-resource-identifier' can join room 'chatroom@conference.example.com'.2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.LocalMUCRoom- PASS Room join precondition 'max occupants':User'johndoe@example.org/client-based-resource-identifier' can join room 'chatroom@conference.example.com'.2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.LocalMUCRoom- PASS Room join precondition 'room locked':User'johndoe@example.org/client-based-resource-identifier' can join room 'chatroom@conference.example.com'.2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.LocalMUCRoom- PASS Room join precondition 'nickname in use':User'johndoe@example.org/client-based-resource-identifier' can join room 'chatroom@conference.example.com'.2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.LocalMUCRoom- PASS Room join precondition 'password protection':User'johndoe@example.org/client-based-resource-identifier' can join room 'chatroom@conference.example.com'.2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.LocalMUCRoom- PASS Room join precondition 'nickname reserved':User'johndoe@example.org/client-based-resource-identifier' can join room 'chatroom@conference.example.com'.2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.LocalMUCRoom- PASS Room join precondition 'restricted to nickname':User'johndoe@example.org/client-based-resource-identifier' can join room chatroom@conference.example.com. Reserved nickname:'null'.2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.LocalMUCRoom- PASS Room join precondition 'is outcast':User'johndoe@example.org/client-based-resource-identifier' can join room 'chatroom@conference.example.com'.2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.LocalMUCRoom- PASS Room join precondition 'member-only':User'johndoe@example.org/client-based-resource-identifier' can join room 'chatroom@conference.example.com'.2020.12.2613:16:53 DEBUG [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.LocalMUCRoom-All preconditions for user 'johndoe@example.org/client-based-resource-identifier'tojoin room 'chatroom@conference.example.com' have been met. User can join the room.2020.12.2613:16:53 DEBUG [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.LocalMUCRoom-Skip adding user 'johndoe@example.org/client-based-resource-identifier' as an occupant of room 'chatroom@conference.example.com' using nickname 'John Doe', as it already is. Updating occupancy withits latest presence information.2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.LocalMUCRoom-Notify other cluster nodes that a new occupant ('johndoe@example.org/client-based-resource-identifier') joined room 'org.jivesoftware.openfire.muc.spi.LocalMUCRoom@bb0f0661'2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.LocalMUCRoom-Send presence of existing occupants of room 'chatroom@conference.example.com'tonew occupant 'johndoe@example.org/client-based-resource-identifier'.2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.LocalMUCRoom-Send presence of new occupant 'johndoe@example.org/client-based-resource-identifier'toexisting occupants of room 'chatroom@conference.example.com'.2020.12.2613:16:53 ERROR [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.LocalMUCRoom-An exception occurred while sending initial presence of new occupant 'johndoe@example.org/client-based-resource-identifier'tothe existing occupants of room:'chatroom@conference.example.com'.java.lang.IllegalArgumentException:Broadcasted presence stanza's 'from' JID johndoe@example.org/client-based-resource-identifier does not match room JID: chatroom@conference.example.com at org.jivesoftware.openfire.muc.spi.LocalMUCRoom.broadcastPresence(LocalMUCRoom.java:1481)~[xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.muc.spi.LocalMUCRoom.sendInitialPresenceToExistingOccupants(LocalMUCRoom.java:1241)[xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.muc.spi.LocalMUCRoom.joinRoom(LocalMUCRoom.java:680)[xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.muc.spi.LocalMUCUser.processRoomJoinRequest(LocalMUCUser.java:828)[xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.muc.spi.LocalMUCUser.process(LocalMUCUser.java:728)[xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.muc.spi.LocalMUCUser.process(LocalMUCUser.java:264)[xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl.processPacket(MultiUserChatServiceImpl.java:423)[xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.component.InternalComponentManager$RoutableComponents.process(InternalComponentManager.java:859)[xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.spi.RoutingTableImpl.routeToComponent(RoutingTableImpl.java:451)[xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.spi.RoutingTableImpl.routePacket(RoutingTableImpl.java:266)[xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.PresenceRouter.handle(PresenceRouter.java:130)[xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.PresenceRouter.route(PresenceRouter.java:79)[xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:84)[xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.net.SocketReader.processPresence(SocketReader.java:297)[xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.net.ServerSocketReader.processPresence(ServerSocketReader.java:94)[xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.net.SocketReader.process(SocketReader.java:220)[xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.net.BlockingReadingMode.readStream(BlockingReadingMode.java:188)[xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.net.BlockingReadingMode.run(BlockingReadingMode.java:81)[xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.net.SocketReader.run(SocketReader.java:150)[xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at java.lang.Thread.run(Thread.java:748)[?:1.8.0_265]2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.LocalMUCRoom-Sending user-requested room history touser'johndoe@example.org/client-based-resource-identifier' that joined room 'chatroom@conference.example.com'.2020.12.2613:16:53 TRACE [Server SR -482574044]:org.jivesoftware.openfire.muc.spi.LocalMUCRoom-Sending room subject touser'johndoe@example.org/client-based-resource-identifier' that joined room 'chatroom@conference.example.com'.
Environment
None
Activity
Show:
Guus der Kinderen December 26, 2020 at 3:35 PM
This, from logged evidence, seems to relate primarily (only?) to occupants that join a MUC room over federation / s2s. They apparently re-establish / rejoin S2S on a different cluster node?
Guus der Kinderen December 26, 2020 at 2:15 PM
`org.jivesoftware.openfire.muc.spi.LocalMUCRole#setPresence` existing implementation clearly intends the presence stanza to have ‘role address’ as its ‘from’ value.
https://igniterealtime.atlassian.net/browse/OF-2152#icft=OF-2152 introduced a check that prevents the real JID of occupants to leak out to MUC room occupants that should not receive it.
Earlier today, this check was triggered (see the anonymized log below) through the broadcast of a presence stanza.
It should be safe to simply overwrite the 'from' address of a presence stanza stored in a 'MUCRole' with the associated role address. All usages that I could track down either expect that, or don't care.
2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - Routing stanza: <iq id="01ded3bc-ee13-4dd3-9ad0-b6464546f723:sendIQ" to="chatroom@conference.example.com/John Doe" type="get" from="johndoe@example.org/client-based-resource-identifier"><ping xmlns="urn:xmpp:ping"></ping></iq> 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - The stanza is a normal packet that should possibly be sent to the room. 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - Stanza recipient: chatroom@conference.example.com/John Doe, room name: pade, sender: johndoe@example.org/client-based-resource-identifier 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - Stanza is a regular MUC stanza. 2020.12.26 13:16:53 DEBUG [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.LocalMUCUser - Ignoring stanza received from a non-occupant of 'pade': <iq id="01ded3bc-ee13-4dd3-9ad0-b6464546f723:sendIQ" to="chatroom@conference.example.com/John Doe" type="get" from="johndoe@example.org/client-based-resource-identifier"><ping xmlns="urn:xmpp:ping"></ping 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - Routing stanza: <iq id="0842cd0d-d8b8-4972-b415-ee2277eef49f:sendIQ" to="open_chat@conference.igniterealtime.org/John Doe" type="get" from="johndoe@example.org/client-based-resource-identifier"><ping xmlns="urn:xmpp:ping"></ping></iq> 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - The stanza is a normal packet that should possibly be sent to the room. 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - Stanza recipient: open_chat@conference.igniterealtime.org/John Doe, room name: open_chat, sender: johndoe@example.org/client-based-resource-identifier 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - Stanza is a regular MUC stanza. 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.LocalMUCUser - User 'johndoe@example.org/client-based-resource-identifier' is sending an IQ 'ping' to itself. See XEP-0410: MUC Self-Ping (Schrödinger's Chat). 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - Routing stanza: <iq from="johndoe@example.org/client-based-resource-identifier" id="e4784daf-9ed7-4470-b5d5-0030747e50b1:sendIQ" to="chatroom@conference.example.com" type="get"><query xmlns="http://jabber.org/protocol/disco#info"></query></iq> 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - Done processing IQ stanza. 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - Routing stanza: <presence from="johndoe@example.org/client-based-resource-identifier" to="chatroom@conference.example.com/John Doe"><x xmlns="http://jabber.org/protocol/muc"><history maxstanzas="0"/></x></presence> 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - The stanza is a normal packet that should possibly be sent to the room. 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - Stanza recipient: chatroom@conference.example.com/John Doe, room name: pade, sender: johndoe@example.org/client-based-resource-identifier 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - Stanza is a regular MUC stanza. 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.LocalMUCUser - Processing join request from 'johndoe@example.org/client-based-resource-identifier' for room 'pade' 2020.12.26 13:16:53 DEBUG [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.LocalMUCRoom - User 'johndoe@example.org/client-based-resource-identifier' attempts to join room 'chatroom@conference.example.com' using nickname 'John Doe'. 2020.12.26 13:16:53 DEBUG [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.LocalMUCRoom - User 'johndoe@example.org/client-based-resource-identifier' role and affiliation in room 'chatroom@conference.example.com are determined to be: participant, none 2020.12.26 13:16:53 DEBUG [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.LocalMUCRoom - Checking all preconditions for user 'johndoe@example.org/client-based-resource-identifier' to join room 'chatroom@conference.example.com'. 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.LocalMUCRoom - PASS Room join precondition 'johndoegate': User 'johndoe@example.org/client-based-resource-identifier' can join room 'chatroom@conference.example.com'. 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.LocalMUCRoom - PASS Room join precondition 'max occupants': User 'johndoe@example.org/client-based-resource-identifier' can join room 'chatroom@conference.example.com'. 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.LocalMUCRoom - PASS Room join precondition 'room locked': User 'johndoe@example.org/client-based-resource-identifier' can join room 'chatroom@conference.example.com'. 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.LocalMUCRoom - PASS Room join precondition 'nickname in use': User 'johndoe@example.org/client-based-resource-identifier' can join room 'chatroom@conference.example.com'. 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.LocalMUCRoom - PASS Room join precondition 'password protection': User 'johndoe@example.org/client-based-resource-identifier' can join room 'chatroom@conference.example.com'. 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.LocalMUCRoom - PASS Room join precondition 'nickname reserved': User 'johndoe@example.org/client-based-resource-identifier' can join room 'chatroom@conference.example.com'. 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.LocalMUCRoom - PASS Room join precondition 'restricted to nickname': User 'johndoe@example.org/client-based-resource-identifier' can join room chatroom@conference.example.com. Reserved nickname: 'null'. 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.LocalMUCRoom - PASS Room join precondition 'is outcast': User 'johndoe@example.org/client-based-resource-identifier' can join room 'chatroom@conference.example.com'. 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.LocalMUCRoom - PASS Room join precondition 'member-only': User 'johndoe@example.org/client-based-resource-identifier' can join room 'chatroom@conference.example.com'. 2020.12.26 13:16:53 DEBUG [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.LocalMUCRoom - All preconditions for user 'johndoe@example.org/client-based-resource-identifier' to join room 'chatroom@conference.example.com' have been met. User can join the room. 2020.12.26 13:16:53 DEBUG [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.LocalMUCRoom - Skip adding user 'johndoe@example.org/client-based-resource-identifier' as an occupant of room 'chatroom@conference.example.com' using nickname 'John Doe', as it already is. Updating occupancy with its latest presence information. 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.LocalMUCRoom - Notify other cluster nodes that a new occupant ('johndoe@example.org/client-based-resource-identifier') joined room 'org.jivesoftware.openfire.muc.spi.LocalMUCRoom@bb0f0661' 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.LocalMUCRoom - Send presence of existing occupants of room 'chatroom@conference.example.com' to new occupant 'johndoe@example.org/client-based-resource-identifier'. 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.LocalMUCRoom - Send presence of new occupant 'johndoe@example.org/client-based-resource-identifier' to existing occupants of room 'chatroom@conference.example.com'. 2020.12.26 13:16:53 ERROR [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.LocalMUCRoom - An exception occurred while sending initial presence of new occupant 'johndoe@example.org/client-based-resource-identifier' to the existing occupants of room: 'chatroom@conference.example.com'. java.lang.IllegalArgumentException: Broadcasted presence stanza's 'from' JID johndoe@example.org/client-based-resource-identifier does not match room JID: chatroom@conference.example.com at org.jivesoftware.openfire.muc.spi.LocalMUCRoom.broadcastPresence(LocalMUCRoom.java:1481) ~[xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.muc.spi.LocalMUCRoom.sendInitialPresenceToExistingOccupants(LocalMUCRoom.java:1241) [xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.muc.spi.LocalMUCRoom.joinRoom(LocalMUCRoom.java:680) [xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.muc.spi.LocalMUCUser.processRoomJoinRequest(LocalMUCUser.java:828) [xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.muc.spi.LocalMUCUser.process(LocalMUCUser.java:728) [xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.muc.spi.LocalMUCUser.process(LocalMUCUser.java:264) [xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl.processPacket(MultiUserChatServiceImpl.java:423) [xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.component.InternalComponentManager$RoutableComponents.process(InternalComponentManager.java:859) [xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.spi.RoutingTableImpl.routeToComponent(RoutingTableImpl.java:451) [xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.spi.RoutingTableImpl.routePacket(RoutingTableImpl.java:266) [xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.PresenceRouter.handle(PresenceRouter.java:130) [xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.PresenceRouter.route(PresenceRouter.java:79) [xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:84) [xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.net.SocketReader.processPresence(SocketReader.java:297) [xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.net.ServerSocketReader.processPresence(ServerSocketReader.java:94) [xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.net.SocketReader.process(SocketReader.java:220) [xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.net.BlockingReadingMode.readStream(BlockingReadingMode.java:188) [xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.net.BlockingReadingMode.run(BlockingReadingMode.java:81) [xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at org.jivesoftware.openfire.net.SocketReader.run(SocketReader.java:150) [xmppserver-4.6.1-SNAPSHOT.jar:4.6.1-SNAPSHOT] at java.lang.Thread.run(Thread.java:748) [?:1.8.0_265] 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.LocalMUCRoom - Sending user-requested room history to user 'johndoe@example.org/client-based-resource-identifier' that joined room 'chatroom@conference.example.com'. 2020.12.26 13:16:53 TRACE [Server SR - 482574044]: org.jivesoftware.openfire.muc.spi.LocalMUCRoom - Sending room subject to user 'johndoe@example.org/client-based-resource-identifier' that joined room 'chatroom@conference.example.com'.