Software /
code /
prosody-modules
Changeset
6056:56fa3bad16cc
mod_sasl2/mod_sasl2.lua: rollback until fixed
author | Menel <menel@snikket.de> |
---|---|
date | Tue, 19 Nov 2024 10:44:00 +0100 |
parents | 6055:23c4c61a1068 |
children | 6057:cc665f343690 6136:8da64ecdbcaa |
files | mod_sasl2/mod_sasl2.lua |
diffstat | 1 files changed, 3 insertions(+), 61 deletions(-) [+] |
line wrap: on
line diff
--- a/mod_sasl2/mod_sasl2.lua Sun Nov 17 22:32:52 2024 -0500 +++ b/mod_sasl2/mod_sasl2.lua Tue Nov 19 10:44:00 2024 +0100 @@ -155,50 +155,12 @@ handle_status(session, "failure", err); return true; end - local tasks = module:fire_event("sasl2/c2s/tasks", { session = session }) - if tasks then - local continue = st.stanza("continue", { xmlns = xmlns_sasl2 }); - if event.message then - continue:text_tag("additional-data", base64.encode(event.message)); - end - if tasks.text then - continue:text_tag("text", tasks.text) - end - continue:tag("tasks"); - for task in pairs(tasks.tasks) do - continue:text_tag("task", task) - end - session.tasks = tasks.tasks; - session.send(continue); - return true; - else - event.success = st.stanza("success", { xmlns = xmlns_sasl2 }); - if event.message then - event.success:text_tag("additional-data", base64.encode(event.message)); - end + event.success = st.stanza("success", { xmlns = xmlns_sasl2 }); + if event.message then + event.success:text_tag("additional-data", base64.encode(event.message)); end end, 1000); -module:hook("sasl2/c2s/tasks", function(event) - if event.session.tested then - return; - end - - return { tasks = { TEST = function(session, el) - local data = st.stanza("task-data", { xmlns = xmlns_sasl2 }); - local count = tonumber(el:get_child_text("test", "test") or "0"); - if count >= 10000 then - session.tested = true - module:fire_event("sasl2/"..session.base_type.."/success", { - session = session, - }); - else - data:text_tag("test", tostring(count + 1), { xmlns = "test" }) - session.send(data); - end - end }, text = "Need to test this" }; -end); - module:hook("sasl2/c2s/success", function (event) local session = event.session event.success:text_tag("authorization-identifier", jid_join(session.username, session.host, session.resource)); @@ -264,23 +226,3 @@ end return process_cdata(session, response:get_text()); end); - -module:hook_tag(xmlns_sasl2, "next", function (session, next) - if not session.tasks or not next.attr.task or not session.tasks[next.attr.task] then - return handle_status(session, "failure", "invalid-mechanism"); - end - - session.task = session.tasks[next.attr.task]; - session.tasks = nil; - session.task(session, next); - return true; -end); - -module:hook_tag(xmlns_sasl2, "task-data", function (session, data) - if not session.task then - return handle_status(session, "failure", "invalid-mechanism"); - end - - session.task(session, data); - return true; -end);