aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Wild <mwild1@gmail.com>2010-02-21 16:43:29 +0000
committerMatthew Wild <mwild1@gmail.com>2010-02-21 16:43:29 +0000
commit73fbe10cd67b212ebcd021913de1a754c8d8f64f (patch)
treee240d4b76716ca60d0357d85ed0ae2c12b6070a4
parentc77b61bfe49ef0776f63a4d5b9dec2bc329965f0 (diff)
parente6ee9308ba9da8c2c7ab9e58bf2cb121b71e62af (diff)
downloadprosody-73fbe10cd67b212ebcd021913de1a754c8d8f64f.tar.gz
prosody-73fbe10cd67b212ebcd021913de1a754c8d8f64f.zip
Merge 0.7 with 0.7
-rw-r--r--core/stanza_router.lua1
-rw-r--r--plugins/mod_iq.lua12
2 files changed, 13 insertions, 0 deletions
diff --git a/core/stanza_router.lua b/core/stanza_router.lua
index 71e40681..72ddebd1 100644
--- a/core/stanza_router.lua
+++ b/core/stanza_router.lua
@@ -140,6 +140,7 @@ function core_post_stanza(origin, stanza, preevents)
to_type = '/host';
else
to_type = '/bare';
+ to_self = true;
end
end
diff --git a/plugins/mod_iq.lua b/plugins/mod_iq.lua
index 5be04533..0e1dadfc 100644
--- a/plugins/mod_iq.lua
+++ b/plugins/mod_iq.lua
@@ -53,6 +53,18 @@ module:hook("iq/bare", function(data)
end
end);
+module:hook("iq/self", function(data)
+ -- IQ to bare JID recieved
+ local origin, stanza = data.origin, data.stanza;
+
+ if stanza.attr.type == "get" or stanza.attr.type == "set" then
+ return module:fire_event("iq/self/"..stanza.tags[1].attr.xmlns..":"..stanza.tags[1].name, data);
+ else
+ module:fire_event("iq/self/"..stanza.attr.id, data);
+ return true;
+ end
+end);
+
module:hook("iq/host", function(data)
-- IQ to a local host recieved
local origin, stanza = data.origin, data.stanza;