+local st = require "util.stanza";
+
+local stream_callbacks = { stream_tag = "http://etherx.jabber.org/streams\1stream",
+ default_ns = "jabber:client",
+ streamopened = sm_streamopened, streamclosed = sm_streamclosed, handlestanza = core_process_stanza };
+
+function stream_callbacks.error(session, error, data)
+ if error == "no-stream" then
+ session.log("debug", "Invalid opening stream header");
+ session:close("invalid-namespace");
+ elseif session.close then
+ (session.log or log)("debug", "Client XML parse error: %s", tostring(error));
+ session:close("xml-not-well-formed");
+ end
+end