Software /
code /
prosody
Diff
plugins/mod_compression.lua @ 4898:010c01841ed0
mod_compression: advertise/activate compression only for authenticated sessions in accordance to XEP-0170. (Thanks fippo)
author | Tobias Markmann <tm@ayena.de> |
---|---|
date | Sat, 19 May 2012 22:05:23 +0200 |
parent | 4481:408c2f688e4e |
child | 5351:901ed253bbf7 |
line wrap: on
line diff
--- a/plugins/mod_compression.lua Sat May 19 20:46:44 2012 +0100 +++ b/plugins/mod_compression.lua Sat May 19 22:05:23 2012 +0200 @@ -1,5 +1,5 @@ -- Prosody IM --- Copyright (C) 2009 Tobias Markmann +-- Copyright (C) 2009-2012 Tobias Markmann -- -- This project is MIT/X11 licensed. Please see the -- COPYING file in the source package for more information. @@ -26,7 +26,7 @@ module:hook("stream-features", function(event) local origin, features = event.origin, event.features; - if not origin.compressed then + if not origin.compressed and (origin.type == "c2s" or origin.type == "s2sin" or origin.type == "s2sout") then -- FIXME only advertise compression support when TLS layer has no compression enabled features:add_child(compression_stream_feature); end @@ -35,7 +35,7 @@ module:hook("s2s-stream-features", function(event) local origin, features = event.origin, event.features; -- FIXME only advertise compression support when TLS layer has no compression enabled - if not origin.compressed then + if not origin.compressed and (origin.type == "c2s" or origin.type == "s2sin" or origin.type == "s2sout") then features:add_child(compression_stream_feature); end end); @@ -43,7 +43,7 @@ -- Hook to activate compression if remote server supports it. module:hook_stanza(xmlns_stream, "features", function (session, stanza) - if not session.compressed then + if not session.compressed and (session.type == "c2s" or session.type == "s2sin" or session.type == "s2sout") then -- does remote server support compression? local comp_st = stanza:child_with_name("compression"); if comp_st then