aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/mod_c2s.lua
diff options
context:
space:
mode:
authorKim Alvefur <zash@zash.se>2015-09-24 20:05:23 +0200
committerKim Alvefur <zash@zash.se>2015-09-24 20:05:23 +0200
commitfabb7c056162683bf2da290348bf3c1efaa9e672 (patch)
treee62a34540641f19247d54c2bec77cce42f37878d /plugins/mod_c2s.lua
parent09672718bf5dbbbb326d5d804ff791d66395614b (diff)
downloadprosody-fabb7c056162683bf2da290348bf3c1efaa9e672.tar.gz
prosody-fabb7c056162683bf2da290348bf3c1efaa9e672.zip
mod_c2s, mod_s2s: Close incoming connections if there are no features to offer on incomplete streams (fixes #285)
Diffstat (limited to 'plugins/mod_c2s.lua')
-rw-r--r--plugins/mod_c2s.lua7
1 files changed, 6 insertions, 1 deletions
diff --git a/plugins/mod_c2s.lua b/plugins/mod_c2s.lua
index 1423eaa3..3d9f9f88 100644
--- a/plugins/mod_c2s.lua
+++ b/plugins/mod_c2s.lua
@@ -83,7 +83,12 @@ function stream_callbacks.streamopened(session, attr)
local features = st.stanza("stream:features");
hosts[session.host].events.fire_event("stream-features", { origin = session, features = features });
- send(features);
+ if features.tags[1] or session.full_jid then
+ send(features);
+ else
+ (session.log or log)("warn", "No features to offer");
+ session:close{ condition = "undefined-condition", text = "No features to proceed with" };
+ end
end
function stream_callbacks.streamclosed(session)