MUC, S2S and Clustering: IllegalStateException in MUC presence broadcast

Description

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.

Environment

None

Activity

Show:
Guus der Kinderen
December 26, 2020, 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, 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.

Fixed
Your pinned fields
Click on the next to a field label to start pinning.

Assignee

Guus der Kinderen

Reporter

Guus der Kinderen