From e8218c7b3471b2219d99fe4841dd98c371bdac5c Mon Sep 17 00:00:00 2001 From: Matthew Wild Date: Wed, 22 May 2013 14:32:02 +0100 Subject: certmanager: Disable SSL compression if possible (LuaSec 0.5 or 0.4.1+OpenSSL 1.x) --- core/certmanager.lua | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/core/certmanager.lua b/core/certmanager.lua index b91f7110..49f445f6 100644 --- a/core/certmanager.lua +++ b/core/certmanager.lua @@ -17,11 +17,12 @@ local prosody = prosody; local resolve_path = configmanager.resolve_relative_path; local config_path = prosody.paths.config; -local luasec_has_noticket, luasec_has_verifyext; +local luasec_has_noticket, luasec_has_verifyext, luasec_has_no_compression; if ssl then local luasec_major, luasec_minor = ssl._VERSION:match("^(%d+)%.(%d+)"); luasec_has_noticket = tonumber(luasec_major)>0 or tonumber(luasec_minor)>=4; luasec_has_verifyext = tonumber(luasec_major)>0 or tonumber(luasec_minor)>=5; + luasec_has_no_compression = tonumber(luasec_major)>0 or tonumber(luasec_minor)>=5; end module "certmanager" @@ -39,6 +40,9 @@ if ssl and not luasec_has_verifyext and ssl.x509 then default_verify[#default_verify+1] = default_verifyext[i]:sub(6); end end +if luasec_has_no_compression and configmanager.get("*", "ssl_compression") ~= true then + default_options[#default_options+1] = "no_compression"; +end function create_context(host, mode, user_ssl_config) user_ssl_config = user_ssl_config or default_ssl_config; -- cgit v1.2.3