--- /dev/null
+lxmppd -> core -> stanza_dispatch
+ requires "util.stanza"
+ requires "core.usermanager"
+
+function init_stanza_dispatcher(session)
+ Initialises the stanza dispatcher which handles different stanza according
+ to their type and XML namespace, dispatching to required handlers.
+
+ iq_handlers["jabber:iq:auth"]
+ A list of handlers for "jabber:iq:auth" stanzas -- authentication
+ (request) stanzas.
+
+ function (stanza)
+ If one of username, password and resource are missing then it ????.
+ If not, then it validates the credentials and replies with the
+ appropriate stanza.
+
+ iq_handlers["jabber:iq:roster"]
+ A list of handlers for "jabber:iq:roster" stanzas -- roster management
+
+ function (stanza)
+ Parses the type of stanza for roster management and does what is
+ requested (roster retrieval, etc.)
+
+ function (stanza)
+ Validates the stanza and calls the required handler