Software /
code /
prosody-modules
File
mod_checkcerts/mod_checkcerts.lua @ 692:2de21fa40382
mod_websocket: Make sending a self-closing <stream:stream> tag configurable
Due to limitations in browser's XML parsers most (all?) existing client
implementations require the <stream:stream/> tag to be self-closing.
This commit makes this behaviour configurable, to enable "proper" implementations.
author | Florian Zeitz <florob@babelmonkeys.de> |
---|---|
date | Mon, 28 May 2012 00:52:47 +0200 |
parent | 667:ea9941812721 |
child | 855:1983d4d51e1a |
line wrap: on
line source
local ssl = require"ssl"; if not ssl.cert_from_pem then module:log("error", "This version of LuaSec (%s) doesn't support certificate checking", ssl._VERSION); return end local function check_certs_validity() local ssl_config = config.rawget(module.host, "core", "ssl"); if not ssl_config then local base_host = module.host:match("%.(.*)"); ssl_config = config.get(base_host, "core", "ssl"); end if ssl.cert_from_pem and ssl_config.certificate then local certfile = ssl_config.certificate; local cert; local fh, err = io.open(certfile); cert = fh and fh:read"*a"; cert = cert and ssl.cert_from_pem(cert); if not cert then return end fh:close(); if not cert:valid_at(os.time()) then module:log("warn", "The certificate %s has expired", certfile); elseif not cert:valid_at(os.time()+86400*7) then module:log("warn", "The certificate %s will expire this week", certfile); elseif not cert:valid_at(os.time()+86400*30) then module:log("info", "The certificate %s will expire later this month", certfile); end end end module.load = check_certs_validity; module:hook_global("config-reloaded", check_certs_validity);