# HG changeset patch # User Matthew Wild # Date 1370464796 -3600 # Node ID 8767b47524c9fdb2b018ea33d4023554be19d9e0 # Parent c4b6ebea7185abc9725d70fdf8aa793a4c5dc818 mod_bosh: Return errors when appropriate (invalid XML, missing sid) diff -r c4b6ebea7185 -r 8767b47524c9 plugins/mod_bosh.lua --- a/plugins/mod_bosh.lua Wed Jun 05 21:37:33 2013 +0100 +++ b/plugins/mod_bosh.lua Wed Jun 05 21:39:56 2013 +0100 @@ -123,7 +123,10 @@ -- In particular, the streamopened() stream callback is where -- much of the session logic happens, because it's where we first -- get to see the 'sid' of this request. - stream:feed(body); + if not stream:feed(body) then + module:log("warn", "Error parsing BOSH payload") + return 400; + end -- Stanzas (if any) in the request have now been processed, and -- we take care of the high-level BOSH logic here, including @@ -174,6 +177,8 @@ return true; -- Inform http server we shall reply later end end + module:log("warn", "Unable to associate request with a session (incomplete request?)"); + return 400; end