mod_privacy: Fix potential traceback in stanza validation, and fix some zero-based...
authorMatthew Wild <mwild1@gmail.com>
Thu, 11 Feb 2010 18:44:42 +0000 (18:44 +0000)
committerMatthew Wild <mwild1@gmail.com>
Thu, 11 Feb 2010 18:44:42 +0000 (18:44 +0000)
plugins/mod_privacy.lua

index df65da7fa063ff810ba82a3bc4e0330eb3f0937e..4e95e6e4d8c3727b238d6401d53edccd7f5e1bbf 100644 (file)
@@ -343,13 +343,14 @@ module:hook("iq/bare/jabber:iq:privacy:query", function(data)
                end
 
                if valid ~= true then
-                       if valid[0] == nil then
-                               valid[0] = "cancel";
-                       end
+                       valid = valid or { "cancel", "bad-request", "Couldn't understand request" };
                        if valid[1] == nil then
-                               valid[1] = "bad-request";
+                               valid[1] = "cancel";
+                       end
+                       if valid[2] == nil then
+                               valid[2] = "bad-request";
                        end
-                       origin.send(st.error_reply(stanza, valid[0], valid[1], valid[2]));
+                       origin.send(st.error_reply(stanza, valid[1], valid[2], valid[3]));
                else
                        datamanager.store(origin.username, origin.host, "privacy", privacy_lists);
                end