Mercurial > prosody-hg
comparison plugins/mod_compression.lua @ 1676:719350956714
Add config option handling.
| author | Tobias Markmann <tm@ayena.de> |
|---|---|
| date | Thu, 13 Aug 2009 11:56:22 +0200 |
| parents | 250bddde4162 |
| children | f0961ce9830c |
comparison
equal
deleted
inserted
replaced
| 1675:bddd5ef9565e | 1676:719350956714 |
|---|---|
| 11 | 11 |
| 12 local xmlns_compression_feature = "http://jabber.org/features/compress" | 12 local xmlns_compression_feature = "http://jabber.org/features/compress" |
| 13 local xmlns_compression_protocol = "http://jabber.org/protocol/compress" | 13 local xmlns_compression_protocol = "http://jabber.org/protocol/compress" |
| 14 local compression_stream_feature = st.stanza("compression", {xmlns=xmlns_compression_feature}):tag("method"):text("zlib"):up(); | 14 local compression_stream_feature = st.stanza("compression", {xmlns=xmlns_compression_feature}):tag("method"):text("zlib"):up(); |
| 15 | 15 |
| 16 local compression_level = module:get_option("compression_level"); | |
| 17 | |
| 18 -- if not defined assume admin wants best compression | |
| 19 if compression_level == nil then compression_level = 9 end; | |
| 20 | |
| 21 compression_level = tonumber(compression_level); | |
| 22 if not compression_level or compression_level < 1 or compression_level > 9 then | |
| 23 module:log("warn", "Invalid compression level in config: %s", tostring(compression_level)); | |
| 24 module:log("warn", "Module loading aborted. Compression won't be available."); | |
| 25 return; | |
| 26 end | |
| 16 | 27 |
| 17 module:add_event_hook("stream-features", | 28 module:add_event_hook("stream-features", |
| 18 function (session, features) | 29 function (session, features) |
| 19 if not session.compressed then | 30 if not session.compressed then |
| 20 -- FIXME only advertise compression support when TLS layer has no compression enabled | 31 -- FIXME only advertise compression support when TLS layer has no compression enabled |
