diff options
author | Kim Alvefur <zash@zash.se> | 2015-09-24 20:15:19 +0200 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2015-09-24 20:15:19 +0200 |
commit | b415f80bd6a623b351126d86deb4734984b7e32b (patch) | |
tree | 12d7f0ee52b21fe124cc849278902ba715a35b32 /prosodyctl | |
parent | 26574b47a73b824bc0bb1ac28f47de379ac2c64d (diff) | |
parent | 7dda2051767b494cba55b3b8c3a3086b60252f9a (diff) | |
download | prosody-b415f80bd6a623b351126d86deb4734984b7e32b.tar.gz prosody-b415f80bd6a623b351126d86deb4734984b7e32b.zip |
Merge 0.10->trunk
Diffstat (limited to 'prosodyctl')
-rwxr-xr-x | prosodyctl | 37 |
1 files changed, 37 insertions, 0 deletions
@@ -913,6 +913,43 @@ function commands.check(arg) print(" For more information see: http://prosody.im/doc/dns"); end end + local all_options = set.new(); + for host in enabled_hosts() do + all_options:include(set.new(it.to_array(it.keys(config[host])))); + end + local ssl = nil, dependencies.softreq"ssl"; + if not ssl then + if not set.intersection(all_options, set.new({"require_encryption", "c2s_require_encryption", "s2s_require_encryption"})):empty() then + print(""); + print(" You require encryption but LuaSec is not available."); + print(" Connections will fail."); + ok = false; + end + elseif not ssl.loadcertificate then + if all_options:contains("s2s_secure_auth") then + print(""); + print(" You have set s2s_secure_auth but your version of LuaSec does "); + print(" not support certificate validation, so all s2s connections will"); + print(" fail."); + ok = false; + elseif all_options:contains("s2s_secure_domains") then + local secure_domains = set.new(); + for host in enabled_hosts() do + if config[host].s2s_secure_auth == true then + secure_domains:add("*"); + else + secure_domains:include(set.new(config[host].s2s_secure_domains)); + end + end + if not secure_domains:empty() then + print(""); + print(" You have set s2s_secure_domains but your version of LuaSec does "); + print(" not support certificate validation, so s2s connections to/from "); + print(" these domains will fail."); + ok = false; + end + end + end print("Done.\n"); end |