Mercurial > prosody-modules
view mod_jid_prep/mod_jid_prep.lua @ 5796:93d6e9026c1b
mod_http_oauth2: Do not enforce PKCE on Device and OOB flows
PKCE does not appear to be used with the Device flow. I have found no
mention of any interaction between those standards. Since no data is
delivered via redirects in these cases, PKCE may not serve any purpose.
This is mostly a problem because we reuse the authorization code to
implement the Device and OOB flows.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Fri, 15 Dec 2023 12:10:07 +0100 |
parents | 99cb06b31ae8 |
children |
line wrap: on
line source
-- Run JIDs through stringprep processing on behalf of clients -- http://xmpp.org/extensions/inbox/jidprep.html local jid_prep = require "util.jid".prep; local st = require "util.stanza"; local xmlns_prep = "urn:xmpp:jidprep:0"; module:add_feature(xmlns_prep); function prep_jid(event) local stanza = event.stanza; local jid = jid_prep(stanza:get_child_text("jid", xmlns_prep)); if not jid then return event.origin.send(st.error_reply(stanza, "modify", "jid-malformed")); end return event.origin.send(st.reply(stanza):tag("jid", { xmlns = xmlns_prep }):text(jid)); end module:hook("iq/host/"..xmlns_prep..":jid", prep_jid); module:depends("http"); module:provides("http", { route = { ["GET /*"] = function (event, jid) return jid_prep(jid) or 400; end; } });