diff options
Diffstat (limited to 'openssl-model.lua')
-rw-r--r-- | openssl-model.lua | 22 |
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 |