summaryrefslogtreecommitdiffstats
path: root/openssl-model.lua
diff options
context:
space:
mode:
Diffstat (limited to 'openssl-model.lua')
-rw-r--r--openssl-model.lua22
1 files changed, 14 insertions, 8 deletions
diff --git a/openssl-model.lua b/openssl-model.lua
index 47b02d0..d998664 100644
--- a/openssl-model.lua
+++ b/openssl-model.lua
@@ -38,11 +38,17 @@ local getdefaults = function()
config = config or format.parse_ini_file(fs.read_file(configfile) or "")
local distinguished_name = config.req.distinguished_name or ""
+ -- Define the order of the parameters in the form
+ local order = { "countryName", "C", "stateOrProvinceName", "ST", "localityName", "L", "organizationName", "O",
+ "organizationalUnitName", "OU", "commonName", "CN", "emailAddress" }
+ local reverseorder = {}
+ for i,o in ipairs(order) do reverseorder[o] = i end
+
-- Get the distinguished name defaults
for name,value in pairs(config[distinguished_name]) do
if nil == string.find(name, "_") then
defaults.value[name] = cfe({ label=value,
- value=config[distinguished_name][name .. "_default"] or "" })
+ value=config[distinguished_name][name .. "_default"] or "", seq=reverseorder[name] or 90 })
end
end
@@ -310,15 +316,15 @@ getreqdefaults = function()
--Add in the encryption bit default
local encryption = config.req.default_bits
- defaults.value.encryption = cfe({ type="select", label="Encryption Bits", value=encryption, option={"2048", "4096"} })
+ defaults.value.encryption = cfe({ type="select", label="Encryption Bits", value=encryption, option={"2048", "4096"}, seq=94 })
-- Add in the default days
local validdays = getconfigentry(config.ca.default_ca, "default_days")
- defaults.value.validdays = cfe({ type="text", label="Period of Validity (Days)", value=validdays, descr="Number of days this certificate is valid for" })
+ defaults.value.validdays = cfe({ type="text", label="Period of Validity (Days)", value=validdays, descr="Number of days this certificate is valid for", seq=95 })
-- Add in the ca type default
defaults.value.certtype = cfe({ type="select", label="Certificate Type",
- value=config.ca.default_ca, option=find_ca_sections() })
+ value=config.ca.default_ca, option=find_ca_sections(), seq=96 })
-- Add in the extensions
local extensions = ""
local content = fs.read_file(configfile) or ""
@@ -326,7 +332,7 @@ getreqdefaults = function()
if config.req.req_extensions then
extensions = format.get_ini_section(content, config.req.req_extensions)
end
- defaults.value.extensions = cfe({ type="longtext", label="Additional x509 Extensions", value=extensions, descr="These extensions can be overridden by the Certificate Type" })
+ defaults.value.extensions = cfe({ type="longtext", label="Additional x509 Extensions", value=extensions, descr="These extensions can be overridden by the Certificate Type", seq=97 })
return defaults
end
@@ -364,8 +370,8 @@ end
getnewrequest = function()
local values = getreqdefaults()
-- In addition to the request defaults, we need a password and confirmation
- values.value.password = cfe({ label="Password" })
- values.value.password_confirm = cfe({ label="Password confirmation" })
+ values.value.password = cfe({ type="password", label="Password", seq=98 })
+ values.value.password_confirm = cfe({ type="password", label="Password confirmation", seq=99 })
return values
end
@@ -829,7 +835,7 @@ end
getnewcarequest = function()
request = getdefaults()
-- In addition to the distinguished name defaults, we need days
- request.value.days = cfe({ value="365", label="Number of days to certify" })
+ request.value.days = cfe({ value="365", label="Number of days to certify", seq=95 })
return request
end