certmanager: Add required verify flags for cert verification if LuaSec (probably) supports them

Sun, 28 Nov 2010 21:09:55 +0000

author
Matthew Wild <mwild1@gmail.com>
date
Sun, 28 Nov 2010 21:09:55 +0000
changeset 3670
d6ba317cbc97
parent 3669
4b56cd1302d4
child 3671
b7d5fe8eb829

certmanager: Add required verify flags for cert verification if LuaSec (probably) supports them

core/certmanager.lua file | annotate | diff | comparison | revisions
--- a/core/certmanager.lua	Sun Nov 28 21:03:33 2010 +0000
+++ b/core/certmanager.lua	Sun Nov 28 21:09:55 2010 +0000
@@ -22,6 +22,8 @@
 -- Global SSL options if not overridden per-host
 local default_ssl_config = configmanager.get("*", "core", "ssl");
 local default_capath = "/etc/ssl/certs";
+local default_verify = (ssl and ssl.x509 and { "peer", "client_once", "continue", "ignore_purpose" }) or "none";
+local default_options = { "no_sslv2" };
 
 function create_context(host, mode, user_ssl_config)
 	user_ssl_config = user_ssl_config or default_ssl_config;
@@ -37,8 +39,8 @@
 		certificate = resolve_path(config_path, user_ssl_config.certificate);
 		capath = resolve_path(config_path, user_ssl_config.capath or default_capath);
 		cafile = resolve_path(config_path, user_ssl_config.cafile);
-		verify = user_ssl_config.verify or "none";
-		options = user_ssl_config.options or "no_sslv2";
+		verify = user_ssl_config.verify or default_verify;
+		options = user_ssl_config.options or default_options;
 		ciphers = user_ssl_config.ciphers;
 		depth = user_ssl_config.depth;
 	};

mercurial