aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/mod_component.lua
diff options
context:
space:
mode:
authorMatthew Wild <mwild1@gmail.com>2021-05-07 17:03:49 +0100
committerMatthew Wild <mwild1@gmail.com>2021-05-07 17:03:49 +0100
commit4c4e764e23cd7d103868a73a0cdb5a7bdcaa4bea (patch)
tree7aef7341dcea6d08c8fb676712d77982054b289c /plugins/mod_component.lua
parent4c7989e7e4c95ccfbdc189abc5bdea9aa9e90b02 (diff)
downloadprosody-4c4e764e23cd7d103868a73a0cdb5a7bdcaa4bea.tar.gz
prosody-4c4e764e23cd7d103868a73a0cdb5a7bdcaa4bea.zip
mod_c2s, mod_s2s, mod_component, mod_bosh, mod_websockets: Set default stanza size limits
c2s/bosh/ws streams will default to 256KB, s2s and components to 512KB. These values are aligned with ejabberd's default settings, which should reduce issues related to inconsistent size limits between servers on the XMPP network. The previous default (10MB) is excessive for any production server, and allows significant memory usage by even unauthenticated sessions.
Diffstat (limited to 'plugins/mod_component.lua')
-rw-r--r--plugins/mod_component.lua3
1 files changed, 2 insertions, 1 deletions
diff --git a/plugins/mod_component.lua b/plugins/mod_component.lua
index b41204a2..51d731c7 100644
--- a/plugins/mod_component.lua
+++ b/plugins/mod_component.lua
@@ -27,6 +27,7 @@ local hosts = prosody.hosts;
local log = module._log;
local opt_keepalives = module:get_option_boolean("component_tcp_keepalives", module:get_option_boolean("tcp_keepalives", true));
+local stanza_size_limit = module:get_option_number("component_stanza_size_limit", module:get_option_number("s2s_stanza_size_limit", 1024*512));
local sessions = module:shared("sessions");
@@ -297,7 +298,7 @@ function listener.onconnect(conn)
session.log("info", "Incoming Jabber component connection");
- local stream = new_xmpp_stream(session, stream_callbacks);
+ local stream = new_xmpp_stream(session, stream_callbacks, stanza_size_limit);
session.stream = stream;
session.notopen = true;