Software /
code /
prosody-modules
File
mod_compat_bind/mod_compat_bind.lua @ 4326:f6fdefc5c6ac
mod_roster_command: Fix subscription when the "user JID" is a bare domain.
Do not attempt to update the roster when the user is bare domain (e.g. a
component), since they don't have rosters and the attempt results in an error:
$ prosodyctl mod_roster_command subscribe proxy.example.com contact@example.com
xxxxxxxxxxFailed to execute command: Error: /usr/lib/prosody/core/rostermanager.lua:104: attempt to concatenate local 'username' (a nil value)
stack traceback:
/usr/lib/prosody/core/rostermanager.lua:104: in function 'load_roster'
/usr/lib/prosody/core/rostermanager.lua:305: in function 'set_contact_pending_out'
mod_roster_command.lua:44: in function 'subscribe'
author | Boris Grozev <boris@jitsi.org> |
---|---|
date | Tue, 05 Jan 2021 13:15:00 -0600 |
parent | 2322:73fbfd1e820b |
line wrap: on
line source
-- Compatibility with clients that set 'to' on resource bind requests -- -- http://xmpp.org/rfcs/rfc3920.html#bind -- http://xmpp.org/rfcs/rfc6120.html#bind-servergen-success local st = require "util.stanza"; module:hook("iq/host/urn:ietf:params:xml:ns:xmpp-bind:bind", function(event) local fixed_stanza = st.clone(event.stanza); fixed_stanza.attr.to = nil; prosody.core_process_stanza(event.origin, fixed_stanza); return true; end);