Software / code / prosody
Comparison
plugins/mod_dialback.lua @ 560:6c07f15a34f4
Fix the last couple of places where we send strings from mod_dialback
| author | Matthew Wild <mwild1@gmail.com> |
|---|---|
| date | Fri, 05 Dec 2008 05:28:16 +0000 |
| parent | 559:fa4a51fe6442 |
| child | 615:4ae3e81513f3 |
comparison
equal
deleted
inserted
replaced
| 559:fa4a51fe6442 | 560:6c07f15a34f4 |
|---|---|
| 17 -- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. | 17 -- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. |
| 18 -- | 18 -- |
| 19 | 19 |
| 20 | 20 |
| 21 | 21 |
| 22 local format = string.format; | |
| 23 local send_s2s = require "core.s2smanager".send_to_host; | 22 local send_s2s = require "core.s2smanager".send_to_host; |
| 24 local s2s_make_authenticated = require "core.s2smanager".make_authenticated; | 23 local s2s_make_authenticated = require "core.s2smanager".make_authenticated; |
| 25 local s2s_verify_dialback = require "core.s2smanager".verify_dialback; | 24 local s2s_verify_dialback = require "core.s2smanager".verify_dialback; |
| 26 | 25 |
| 27 local st = require "util.stanza"; | 26 local st = require "util.stanza"; |
| 43 else | 42 else |
| 44 type = "invalid" | 43 type = "invalid" |
| 45 log("warn", "Asked to verify a dialback key that was incorrect. An imposter is claiming to be %s?", attr.to); | 44 log("warn", "Asked to verify a dialback key that was incorrect. An imposter is claiming to be %s?", attr.to); |
| 46 end | 45 end |
| 47 log("debug", "verified dialback key... it is %s", type); | 46 log("debug", "verified dialback key... it is %s", type); |
| 48 origin.sends2s(format("<db:verify from='%s' to='%s' id='%s' type='%s'>%s</db:verify>", attr.to, attr.from, attr.id, type, stanza[1])); | 47 origin.sends2s(st.stanza("db:verify", { from = attr.to, to = attr.from, id = attr.id, type = type }):text(stanza[1])); |
| 49 end); | 48 end); |
| 50 | 49 |
| 51 module:add_handler("s2sin_unauthed", "result", xmlns_dialback, | 50 module:add_handler("s2sin_unauthed", "result", xmlns_dialback, |
| 52 function (origin, stanza) | 51 function (origin, stanza) |
| 53 -- he wants to be identified through dialback | 52 -- he wants to be identified through dialback |
| 77 valid = "invalid"; | 76 valid = "invalid"; |
| 78 end | 77 end |
| 79 if not origin.dialback_verifying.sends2s then | 78 if not origin.dialback_verifying.sends2s then |
| 80 log("warn", "Incoming s2s session %s was closed in the meantime, so we can't notify it of the db result", tostring(origin.dialback_verifying):match("%w+$")); | 79 log("warn", "Incoming s2s session %s was closed in the meantime, so we can't notify it of the db result", tostring(origin.dialback_verifying):match("%w+$")); |
| 81 else | 80 else |
| 82 origin.dialback_verifying.sends2s(format("<db:result from='%s' to='%s' id='%s' type='%s'>%s</db:result>", | 81 origin.dialback_verifying.sends2s( |
| 83 attr.to, attr.from, attr.id, valid, origin.dialback_verifying.dialback_key)); | 82 st.stanza("db:result", { from = attr.to, to = attr.from, id = attr.id, type = valid }) |
| 83 :text(origin.dialback_verifying.dialback_key)); | |
| 84 end | 84 end |
| 85 end | 85 end |
| 86 end); | 86 end); |
| 87 | 87 |
| 88 module:add_handler({ "s2sout_unauthed", "s2sout" }, "result", xmlns_dialback, | 88 module:add_handler({ "s2sout_unauthed", "s2sout" }, "result", xmlns_dialback, |