Software /
code /
prosody
Annotate
core/servermanager.lua @ 91:6d66eb6b24cb
Fixed: util.stanza.deserialize now handles nil stanzas
author | Waqas Hussain <waqas20@gmail.com> |
---|---|
date | Thu, 09 Oct 2008 22:19:35 +0500 |
parent | 43:03dc9df59368 |
child | 111:0abe771b43c6 |
rev | line source |
---|---|
43
03dc9df59368
Reply to unhandled iq's with service-unavailable
Matthew Wild <mwild1@gmail.com>
parents:
30
diff
changeset
|
1 |
03dc9df59368
Reply to unhandled iq's with service-unavailable
Matthew Wild <mwild1@gmail.com>
parents:
30
diff
changeset
|
2 local st = require "util.stanza"; |
03dc9df59368
Reply to unhandled iq's with service-unavailable
Matthew Wild <mwild1@gmail.com>
parents:
30
diff
changeset
|
3 local send = require "core.sessionmanager".send_to_session; |
03dc9df59368
Reply to unhandled iq's with service-unavailable
Matthew Wild <mwild1@gmail.com>
parents:
30
diff
changeset
|
4 local xmlns_stanzas ='urn:ietf:params:xml:ns:xmpp-stanzas'; |
30 | 5 |
6 require "modulemanager" | |
7 | |
8 -- Handle stanzas that were addressed to the server (whether they came from c2s, s2s, etc.) | |
9 function handle_stanza(origin, stanza) | |
10 -- Use plugins | |
43
03dc9df59368
Reply to unhandled iq's with service-unavailable
Matthew Wild <mwild1@gmail.com>
parents:
30
diff
changeset
|
11 if not modulemanager.handle_stanza(origin, stanza) then |
03dc9df59368
Reply to unhandled iq's with service-unavailable
Matthew Wild <mwild1@gmail.com>
parents:
30
diff
changeset
|
12 if stanza.name == "iq" then |
03dc9df59368
Reply to unhandled iq's with service-unavailable
Matthew Wild <mwild1@gmail.com>
parents:
30
diff
changeset
|
13 local reply = st.reply(stanza); |
03dc9df59368
Reply to unhandled iq's with service-unavailable
Matthew Wild <mwild1@gmail.com>
parents:
30
diff
changeset
|
14 reply.attr.type = "error"; |
03dc9df59368
Reply to unhandled iq's with service-unavailable
Matthew Wild <mwild1@gmail.com>
parents:
30
diff
changeset
|
15 reply:tag("error", { type = "cancel" }) |
03dc9df59368
Reply to unhandled iq's with service-unavailable
Matthew Wild <mwild1@gmail.com>
parents:
30
diff
changeset
|
16 :tag("service-unavailable", { xmlns = xmlns_stanzas }); |
03dc9df59368
Reply to unhandled iq's with service-unavailable
Matthew Wild <mwild1@gmail.com>
parents:
30
diff
changeset
|
17 send(origin, reply); |
03dc9df59368
Reply to unhandled iq's with service-unavailable
Matthew Wild <mwild1@gmail.com>
parents:
30
diff
changeset
|
18 end |
03dc9df59368
Reply to unhandled iq's with service-unavailable
Matthew Wild <mwild1@gmail.com>
parents:
30
diff
changeset
|
19 end |
30 | 20 end |