diff options
author | Kim Alvefur <zash@zash.se> | 2016-04-19 12:16:17 +0200 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2016-04-19 12:16:17 +0200 |
commit | 9cf04c820a418a57a8826b018dc1723824635133 (patch) | |
tree | 8c2b4c944e87ee1e5d7f3af7f4bf0dd1d2c4e5cd /plugins/mod_bosh.lua | |
parent | 4fea560fa7d84d2a6c90540537be72c15d6d300e (diff) | |
download | prosody-9cf04c820a418a57a8826b018dc1723824635133.tar.gz prosody-9cf04c820a418a57a8826b018dc1723824635133.zip |
mod_bosh: Return a proper BOSH error response instead of deprecated(?) status code (See #343)
Diffstat (limited to 'plugins/mod_bosh.lua')
-rw-r--r-- | plugins/mod_bosh.lua | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/plugins/mod_bosh.lua b/plugins/mod_bosh.lua index 845df61a..64d52f91 100644 --- a/plugins/mod_bosh.lua +++ b/plugins/mod_bosh.lua @@ -129,7 +129,9 @@ function handle_POST(event) local ok, err = stream:feed(body); if not ok then module:log("warn", "Error parsing BOSH payload; %s", err) - return 400; + local close_reply = st.stanza("body", { xmlns = xmlns_bosh, type = "terminate", + ["xmlns:stream"] = xmlns_streams, condition = "bad-request" }); + return tostring(close_reply); end -- Stanzas (if any) in the request have now been processed, and @@ -184,7 +186,9 @@ function handle_POST(event) return; -- A response has been sent already end module:log("warn", "Unable to associate request with a session (incomplete request?)"); - return 400; + local close_reply = st.stanza("body", { xmlns = xmlns_bosh, type = "terminate", + ["xmlns:stream"] = xmlns_streams, condition = "item-not-found" }); + return tostring(close_reply) .. "\n"; end |