Skip to content

Allow vcard requests in MUC, even when IQ requests are disabled #4489

@lovetox

Description

@lovetox

ejabberd offers a non-standard muc setting muc#roomconfig_allow_query_users

This currently causes vcard requests to fail.

<!-- Outgoing Sa 08 Nov 2025 23:04:47 (movim.eu) -->
<iq to="batiliho@conference.movim.eu/lovetox-occ" type="get" id="vc2" xmlns="jabber:client">
  <vCard xmlns="vcard-temp" />
</iq>


<!-- Incoming Sa 08 Nov 2025 23:04:47 (movim.eu) -->
<iq xmlns="jabber:client" xml:lang="en-US" to="lovetox2@movim.eu/gajim.FSU48890" from="batiliho@conference.movim.eu/lovetox-occ" type="error" id="vc2">
  <vCard xmlns="vcard-temp" />
  <error type="cancel">
    <not-allowed xmlns="urn:ietf:params:xml:ns:xmpp-stanzas" />
    <text xml:lang="en" xmlns="urn:ietf:params:xml:ns:xmpp-stanzas">Queries to the conference members are not allowed in this room</text>
</error>
</iq>

If the intention of this query was that no IQ is routed to the full jid of a participant, then ejabberd should allow the vcard query, because the vcard query is only routed to the bare jid of the participant, and the server of the participant will answer this IQ, and not route it to any resource, making it so that still no IQ would reach the participant.

This in turn would allow avatars to work, while still no IQs would be routed to the full jids of participants.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions