Merge 0.10->trunk
[prosody.git] / plugins / mod_c2s.lua
index 1423eaa342312bc093b1fc01229ebe1bd92239ec..c638cd039897fc3866eacca4df17c41597182bdb 100644 (file)
@@ -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)
@@ -308,7 +313,7 @@ module:hook("server-stopping", function(event)
        for _, session in pairs(sessions) do
                session:close{ condition = "system-shutdown", text = reason };
        end
-end, 1000);
+end, -100);