diff options
author | Kim Alvefur <zash@zash.se> | 2017-10-25 01:32:30 +0200 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2017-10-25 01:32:30 +0200 |
commit | 732bb3c8408748b602f28cd2c27bee6fce67d37f (patch) | |
tree | 05790f7698486aa2433085e2478a8638de5e9cd0 | |
parent | 87e144edf3540ee5d7e2443272207e52078e2298 (diff) | |
parent | 695e80fad2270d317dd3b45b0d2ef2c9aec7062d (diff) | |
download | prosody-732bb3c8408748b602f28cd2c27bee6fce67d37f.tar.gz prosody-732bb3c8408748b602f28cd2c27bee6fce67d37f.zip |
Merge 0.10->trunk
-rw-r--r-- | core/stanza_router.lua | 3 | ||||
-rw-r--r-- | plugins/mod_stanza_debug.lua | 29 |
2 files changed, 31 insertions, 1 deletions
diff --git a/core/stanza_router.lua b/core/stanza_router.lua index 2312614c..0be92f88 100644 --- a/core/stanza_router.lua +++ b/core/stanza_router.lua @@ -140,7 +140,8 @@ function core_process_stanza(origin, stanza) if h then local event; if xmlns == nil then - if stanza.name == "iq" and (stanza.attr.type == "set" or stanza.attr.type == "get") then + if stanza.name == "iq" and (stanza.attr.type == "set" or stanza.attr.type == "get") + and stanza.tags[1] and stanza.tags[1].attr.xmlns then event = "stanza/iq/"..stanza.tags[1].attr.xmlns..":"..stanza.tags[1].name; else event = "stanza/"..stanza.name; diff --git a/plugins/mod_stanza_debug.lua b/plugins/mod_stanza_debug.lua new file mode 100644 index 00000000..6dedb6f7 --- /dev/null +++ b/plugins/mod_stanza_debug.lua @@ -0,0 +1,29 @@ +module:set_global(); + +local tostring = tostring; +local filters = require "util.filters"; + +local function log_send(t, session) + if t and t ~= "" and t ~= " " then + session.log("debug", "SEND: %s", tostring(t)); + end + return t; +end + +local function log_recv(t, session) + if t and t ~= "" and t ~= " " then + session.log("debug", "RECV: %s", tostring(t)); + end + return t; +end + +local function init_raw_logging(session) + filters.add_filter(session, "stanzas/in", log_recv, -10000); + filters.add_filter(session, "stanzas/out", log_send, 10000); +end + +filters.add_filter_hook(init_raw_logging); + +function module.unload() + filters.remove_filter_hook(init_raw_logging); +end |