Mercurial > prosody-modules
view mod_conformance_restricted/mod_conformance_restricted.lua @ 5590:b681948a01f1
mod_http_muc_log: Fix redirect bug
If you somehow went to /muc_log/room/yyyy-mm-dd/something it would send
you in a redirect loop that continuously added path components until the
path can't be parsed anymore.
This should ensure that /muc_log/room/date/ is simply 404'd
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Mon, 10 Jul 2023 16:10:57 +0200 |
parents | 7dbde05b48a9 |
children |
line wrap: on
line source
-- Prosody IM -- Copyright (C) 2012 Florian Zeitz -- -- This project is MIT/X11 licensed. Please see the -- COPYING file in the source package for more information. -- local st = require "util.stanza"; local jid = require "util.jid"; module:hook("message/host", function (event) local origin, stanza = event.origin, event.stanza; local node, host, resource = jid.split(stanza.attr.to); local body = stanza:get_child_text("body"); if resource ~= "conformance" then return; -- Not interop testing end if body == "PI" then origin.send("<?testing this='out'?>"); elseif body == "comment" then origin.send("<!-- no comment -->"); elseif body == "DTD" then origin.send("<!DOCTYPE greeting [\n<!ENTITY test 'You should not see this'>\n]>"); elseif body == "entity" then origin.send("<message type='chat' to='"..stanza.attr.from.."'><body>&test;</body></message>"); else local reply = st.reply(stanza); reply:body("Send me one of: PI, comment, DTD, or entity"); origin.send(reply); end return true; end);