summaryrefslogtreecommitdiffstats
path: root/openssl-model.lua
diff options
context:
space:
mode:
Diffstat (limited to 'openssl-model.lua')
-rw-r--r--openssl-model.lua10
1 files changed, 6 insertions, 4 deletions
diff --git a/openssl-model.lua b/openssl-model.lua
index 6a17a0c..bcaf477 100644
--- a/openssl-model.lua
+++ b/openssl-model.lua
@@ -53,8 +53,8 @@ local validate_distinguished_names = function(values)
local success = true
for name,value in pairs(values.value) do
- if string.find(value.value, "[,/'=]") then
- value.errtxt = "Value cannot contain =/,'"
+ if string.find(value.value, "[#]") then
+ value.errtxt = "Value cannot contain #"
success = false
end
@@ -102,14 +102,16 @@ local create_subject_string = function(values, ignorevalues)
reverseshorts[short] = name
end
for name,value in pairs(values.value) do
- name = name:gsub(".*%.", "")
+ name = name:gsub(".*%.", "") -- remove the "0." from the front
+ value.value = value.value:gsub("[/=]", "\%1") -- escape characters
if (short_names[name] or reverseshorts[name]) and value.value and value.value ~= "" then
name = short_names[name] or name
outstr[#outstr + 1] = name .. "=" .. value.value
end
end
for name,value in pairs(values.value) do
- name = name:gsub(".*%.", "")
+ name = name:gsub(".*%.", "") -- remove the "0." from the front
+ value.value = value.value:gsub("[/=]", "\%1") -- escape characters
if not reverseignore[name] and not short_names[name] and not reverseshorts[name] and value.value and value.value ~= "" then
outstr[#outstr + 1] = name .. "=" .. value.value
end