diff options
Diffstat (limited to 'openssl-controller.lua')
-rw-r--r-- | openssl-controller.lua | 30 |
1 files changed, 18 insertions, 12 deletions
diff --git a/openssl-controller.lua b/openssl-controller.lua index 0b3cdde..f8e32a1 100644 --- a/openssl-controller.lua +++ b/openssl-controller.lua @@ -7,6 +7,15 @@ default_action = "status" local sslstatus +local handle_req_clientdata = function(clientdata, defaults) + -- Put the user values into the table + for name,value in pairs(clientdata) do + if defaults.value[name] then + defaults.value[name].value = value + end + end +end + mvc={} mvc.pre_exec = function(self) sslstatus = self.model.getstatus() @@ -49,18 +58,17 @@ end -- Form to request a new cert request = function(self) - local request + local request = self.model.getnewrequest() if self.clientdata.Submit then + handle_req_clientdata(self.clientdata, request) -- Try to submit the request - request = self.model.submitrequest(self.clientdata, self.sessiondata.userinfo.userid) + request = self.model.submitrequest(request, self.sessiondata.userinfo.userid) if not request.errtxt then cmdresult = cfe({ value="Request submitted", label="Request result" }) self.sessiondata.cmdresult = cmdresult --request.descr = "Submitted request" redirect(self, "read") end - else - request = self.model.getnewrequest() end request.type = "form" @@ -72,14 +80,13 @@ end -- Form to edit request defaults editdefaults = function(self) - local defaults + local defaults = self.model.getreqdefaults() if self.clientdata.Save then - defaults = self.model.setreqdefaults(self.clientdata) + handle_req_clientdata(self.clientdata, defaults) + defaults = self.model.setreqdefaults(defaults) if not defaults.errtxt then defaults.descr = "Defaults set" end - else - defaults = self.model.getreqdefaults() end defaults.type = "form" @@ -177,15 +184,14 @@ end -- Generate a self-signed CA generatecacert = function(self) - local request + local request = self.model.getnewcarequest() if self.clientdata.Generate then + handle_req_clientdata(self.clientdata, request) -- Try to submit the request - request = self.model.generateca(self.clientdata) + request = self.model.generateca(request) if not request.errtxt then redirect(self) end - else - request = self.model.getnewcarequest() end request.type = "form" |