diff options
author | Kim Alvefur <zash@zash.se> | 2018-08-04 03:13:55 +0200 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2018-08-04 03:13:55 +0200 |
commit | b4e05514d2f3cfaf0b1466b2c983808c6a96498f (patch) | |
tree | 2d44909d29198c2d89a8cae15c50b69ab5a1bd9a /plugins | |
parent | 50126a53b9fb3069d0877a3b57de420ba3676853 (diff) | |
download | prosody-b4e05514d2f3cfaf0b1466b2c983808c6a96498f.tar.gz prosody-b4e05514d2f3cfaf0b1466b2c983808c6a96498f.zip |
mod_pubsub: Add configurable maximum on number of items
Like aefb96a52f5f
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/mod_pubsub/mod_pubsub.lua | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/plugins/mod_pubsub/mod_pubsub.lua b/plugins/mod_pubsub/mod_pubsub.lua index 5b01d1d1..18bdf17f 100644 --- a/plugins/mod_pubsub/mod_pubsub.lua +++ b/plugins/mod_pubsub/mod_pubsub.lua @@ -70,6 +70,14 @@ function simple_broadcast(kind, node, jids, item, actor, node_obj) end end +local max_max_items = module:get_option_number("pubsub_max_items", 256); +function check_node_config(node, actor, new_config) -- luacheck: ignore 212/actor 212/node + if (new_config["max_items"] or 1) > max_max_items then + return false; + end + return true; +end + function is_item_stanza(item) return st.is_stanza(item) and item.attr.xmlns == xmlns_pubsub and item.name == "item"; end @@ -222,6 +230,7 @@ function module.load() itemstore = create_simple_itemstore; broadcaster = simple_broadcast; itemcheck = is_item_stanza; + check_node_config = check_node_config; get_affiliation = get_affiliation; normalize_jid = jid_bare; |