Mercurial > prosody-hg
view plugins/mod_storage_none.lua @ 10092:4b3c129e96f2 0.11
mod_websocket: Clone stanza before mutating (fixes #1398)
Checking for `stanza.attr.xmlns == nil` to determine if the stanza
object is an actual stanza (`<message>`, `<presence>` or `<iq>` in the
`jabber:client` or `jabbber:server` namespace) or some other stream
element.
Since this mutation is not reverted, it may leak to other places and
cause them to mistreat stanzas as stream elements. Especially in cases
like MUC where a single stanza is broadcast to many recipients.
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Sat, 20 Jul 2019 04:19:58 +0200 |
| parents | ef671d337577 |
| children |
line wrap: on
line source
-- luacheck: ignore 212 local driver = {}; local driver_mt = { __index = driver }; function driver:open(store, typ) if typ and typ ~= "keyval" and typ ~= "archive" then return nil, "unsupported-store"; end return setmetatable({ store = store, type = typ }, driver_mt); end function driver:get(user) return {}; end function driver:set(user, data) return nil, "Storage disabled"; end function driver:stores(username) return { "roster" }; end function driver:purge(user) return true; end function driver:append() return nil, "Storage disabled"; end function driver:find() return function () end, 0; end function driver:delete() return true; end module:provides("storage", driver);
