Tue, 18 Nov 2008 17:52:33 +0000
Quite some changes, to:
- Small logging fix for s2smanager
- Send a stream error if an incoming s2s connection is to an unrecognised hostname (fixes #11)
- init_xmlhandlers now takes a table of callbacks (includes changes to net/xmpp*_listener for this)
- Move sending of unavailable presence to where it should be, sessionmanager.destroy_session
- Fix sending of stream errors to wrong connection
local st = require "util.stanza"; local xmlns_stanzas ='urn:ietf:params:xml:ns:xmpp-stanzas'; require "modulemanager" -- Handle stanzas that were addressed to the server (whether they came from c2s, s2s, etc.) function handle_stanza(origin, stanza) -- Use plugins if not modulemanager.handle_stanza(origin, stanza) then if stanza.name == "iq" then if stanza.attr.type ~= "result" and stanza.attr.type ~= "error" then origin.send(st.error_reply(stanza, "cancel", "service-unavailable")); end elseif stanza.name == "message" then origin.send(st.error_reply(stanza, "cancel", "service-unavailable")); elseif stanza.name ~= "presence" then error("Unknown stanza"); end end end