Diff

mod_compression_unsafe/README.md @ 6209:d611ed13df7e draft

Merge
author Trần H. Trung <xmpp:trần.h.trung@trung.fun>
date Tue, 18 Mar 2025 00:16:25 +0700
child 6211:750d64c47ec6
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mod_compression_unsafe/README.md	Tue Mar 18 00:16:25 2025 +0700
@@ -0,0 +1,65 @@
+---
+labels:
+- 'Stage-Deprecated'
+summary: 'Implementation of XEP-0138'
+...
+
+::: {.alert .alert-warning}
+**NOTE:** XMPP compression has unresolved [security concerns](https://mail.jabber.org/pipermail/standards/2014-October/029215.html),
+and this module has been removed from Prosody and renamed.
+:::
+
+While the bandwidth usage of XMPP isn't that much, compressing the data
+sent to/from your server can give significant benefits to those on slow
+connections, such as dial-up or mobile networks. Prosody supports
+compression for client-to-server (if your client supports it) and
+server-to-server streams using the mod\_compression plugin.
+
+# Details
+
+mod\_compression implements [XEP-0138], and supports the zlib compression
+algorithm.
+
+## Dependencies
+
+The XMPP protocol specifies that all clients and servers supporting
+compression must support the "zlib" compression method, and this is what
+Prosody uses. However you will need to install zlib support for Lua on
+your system. There are different ways of doing this depending on your
+system. If in doubt whether it is installed correctly, the command
+`lua -lzlib` in a console should open a Lua prompt with no errors.
+
+Debian/Ubuntu
+:   `apt-get install lua-zlib`
+
+LuaRocks
+:   `luarocks install lua-zlib`
+
+Source
+:   <https://github.com/brimworks/lua-zlib>
+
+# Usage
+
+``` lua
+modules_enabled = {
+    -- Other modules
+    "compression_unsafe"; -- Enable mod_compression_unsafe
+}
+```
+
+## Configuration
+
+The compression level can be set using the `compression_level` option
+which can be a number from 1 to 9. Higher compression levels will use
+more resources but less bandwidth.
+
+## Example
+
+``` lua
+modules_enabled = {
+    -- Other modules
+    "compression_unsafe"; -- Enable mod_compression_unsafe
+}

+compression_level = 5
+```