moduleapi: Import util.stanza required for module:broadcast()
[prosody.git] / core / stanza_router.lua
index dbbb299b1d0752b21df390ebaca5df14d1aa85ae..8e86b16f58d4c7af99c9bd1a0c81723e855168b6 100644 (file)
@@ -46,7 +46,7 @@ local function handle_unhandled_stanza(host, origin, stanza)
                if origin.send then
                        origin.send(st.error_reply(stanza, "cancel", "service-unavailable"));
                end
-       elseif not((name == "features" or name == "error") and xmlns == "http://etherx.jabber.org/streams") then -- FIXME remove check once we handle S2S features
+       else
                log("warn", "Unhandled %s stream element or stanza: %s; xmlns=%s: %s", origin_type, name, xmlns, tostring(stanza)); -- we didn't handle it
                origin:close("unsupported-stanza-type");
        end
@@ -63,7 +63,7 @@ function core_process_stanza(origin, stanza)
                end
                if name == "iq" then
                        if not stanza.attr.id then stanza.attr.id = ""; end -- COMPAT Jabiru doesn't send the id attribute on roster requests
-                       if not iq_types[st_type] or (st_type ~= "result" and #stanza.tags ~= 1) then
+                       if not iq_types[st_type] or ((st_type == "set" or st_type == "get") and (#stanza.tags ~= 1)) then
                                origin.send(st.error_reply(stanza, "modify", "bad-request", "Invalid IQ type or incorrect number of children"));
                                return;
                        end