aboutsummaryrefslogtreecommitdiffstats
path: root/util/x509.lua
diff options
context:
space:
mode:
Diffstat (limited to 'util/x509.lua')
-rw-r--r--util/x509.lua14
1 files changed, 9 insertions, 5 deletions
diff --git a/util/x509.lua b/util/x509.lua
index bf8d3906..f228b201 100644
--- a/util/x509.lua
+++ b/util/x509.lua
@@ -24,7 +24,7 @@ local base64 = require "util.encodings".base64;
local log = require "util.logger".init("x509");
local s_format = string.format;
-module "x509"
+local _ENV = nil;
local oid_commonname = "2.5.4.3"; -- [LDAP] 2.3
local oid_subjectaltname = "2.5.29.17"; -- [PKIX] 4.2.1.6
@@ -147,7 +147,7 @@ local function compare_srvname(host, service, asserted_names)
return false
end
-function verify_identity(host, service, cert)
+local function verify_identity(host, service, cert)
if cert.setencode then
cert:setencode("utf8");
end
@@ -218,7 +218,7 @@ end
local pat = "%-%-%-%-%-BEGIN ([A-Z ]+)%-%-%-%-%-\r?\n"..
"([0-9A-Za-z+/=\r\n]*)\r?\n%-%-%-%-%-END %1%-%-%-%-%-";
-function pem2der(pem)
+local function pem2der(pem)
local typ, data = pem:match(pat);
if typ and data then
return base64.decode(data), typ;
@@ -228,10 +228,14 @@ end
local wrap = ('.'):rep(64);
local envelope = "-----BEGIN %s-----\n%s\n-----END %s-----\n"
-function der2pem(data, typ)
+local function der2pem(data, typ)
typ = typ and typ:upper() or "CERTIFICATE";
data = base64.encode(data);
return s_format(envelope, typ, data:gsub(wrap, '%0\n', (#data-1)/64), typ);
end
-return _M;
+return {
+ verify_identity = verify_identity;
+ pem2der = pem2der;
+ der2pem = der2pem;
+};