From d0c3e64ff92602968284e398a18e817b078c4356 Mon Sep 17 00:00:00 2001
From: Kim Alvefur <zash@zash.se>
Date: Wed, 27 Dec 2017 01:00:34 +0100
Subject: mod_bosh: Return implicit 404 instead of the proper BOSH terminate
 thing

---
 plugins/mod_bosh.lua | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

(limited to 'plugins')

diff --git a/plugins/mod_bosh.lua b/plugins/mod_bosh.lua
index 2cb63bdf..5e7701a3 100644
--- a/plugins/mod_bosh.lua
+++ b/plugins/mod_bosh.lua
@@ -283,12 +283,9 @@ function stream_callbacks.streamopened(context, attr)
 			response:send(tostring(close_reply));
 			return;
 		elseif to_host ~= module.host then
-			-- Unknown host
-			log("debug", "BOSH client tried to connect to unknown host: %s", tostring(attr.to));
-			local close_reply = st.stanza("body", { xmlns = xmlns_bosh, type = "terminate",
-				["xmlns:stream"] = xmlns_streams, condition = "host-unknown" });
-			response:send(tostring(close_reply));
-			return;
+			-- Could be meant for a different instance of the module
+			-- if multiple instances are loaded with the same URL then this can happen
+			return; --> 404
 		end
 		if not rid or (not wait and attr.wait or wait < 0 or wait % 1 ~= 0) then
 			log("debug", "BOSH client sent invalid rid or wait attributes: rid=%s, wait=%s", tostring(attr.rid), tostring(attr.wait));
-- 
cgit v1.2.3