diff options
-rw-r--r-- | heimdal-controller.lua | 16 | ||||
-rw-r--r-- | heimdal-model.lua | 20 |
2 files changed, 20 insertions, 16 deletions
diff --git a/heimdal-controller.lua b/heimdal-controller.lua index 73756d4..f94a609 100644 --- a/heimdal-controller.lua +++ b/heimdal-controller.lua @@ -1,23 +1,25 @@ -module(..., package.seeall) +local mymodule = {} -default_action = "status" +mymodule.default_action = "status" -function status(self) +function mymodule.status(self) return self.model.getstatus() end -function expert(self) +function mymodule.expert(self) return self.handle_form(self, self.model.get_filedetails, self.model.update_filedetails, self.clientdata, "Save", "Edit Heimdal Config", "Configuration Set") end -function klist(self) +function mymodule.klist(self) return self.model.klist() end -function kinit(self) +function mymodule.kinit(self) return self.handle_form(self, self.model.get_kinit, self.model.set_kinit, self.clientdata, "Submit", "Obtain Kerberos Ticket") end -function kdestroy(self) +function mymodule.kdestroy(self) return self.handle_form(self, self.model.get_kdestroy, self.model.kdestroy, self.clientdata, "Destroy", "Destroy Tickets") end + +return mymodule diff --git a/heimdal-model.lua b/heimdal-model.lua index 5cd9ecc..fea2481 100644 --- a/heimdal-model.lua +++ b/heimdal-model.lua @@ -1,4 +1,4 @@ -module(..., package.seeall) +local mymodule = {} -- Load libraries modelfunctions = require("modelfunctions") @@ -14,26 +14,26 @@ local packagename = "heimdal" -- ################################################################################ -- PUBLIC FUNCTIONS -function getstatus() +function mymodule.getstatus() return modelfunctions.getstatus(nil, packagename, "Heimdal Status") end -function get_filedetails() +function mymodule.get_filedetails() return modelfunctions.getfiledetails(configfile) end -function update_filedetails(self, filedetails) +function mymodule.update_filedetails(self, filedetails) return modelfunctions.setfiledetails(self, filedetails, {configfile}) end -function get_kinit() +function mymodule.get_kinit() local value = {} value.login = cfe({ label="KDC login", seq=1 }) value.password = cfe({ type="password", label="KDC password", seq=2 }) return cfe({ type="group", value=value, label="Kinit Parameters" }) end -function set_kinit(self, data) +function mymodule.set_kinit(self, data) local tmp = "/tmp/k"..os.time() fs.write_file(tmp, data.value.password.value) data.descr, data.errtxt = modelfunctions.run_executable({"kinit", "--password-file="..tmp, data.value.login.value}, true) @@ -42,18 +42,20 @@ function set_kinit(self, data) return data end -function klist() +function mymodule.klist() local result, errtxt = modelfunctions.run_executable({"klist"}) if not errtxt and result == "" then result = "No tickets found" end return cfe({ value=result, label="List of Kerberos Tickets", errtxt=errtxt }) end -function get_kdestroy() +function mymodule.get_kdestroy() return cfe({ type="group", value={}, label="Destroy Tickets" }) end -function kdestroy(self, kd) +function mymodule.kdestroy(self, kd) kd.descr, kd.errtxt = modelfunctions.run_executable({"kdestroy"}) if not kd.errtxt and kd.descr == "" then kd.descr = "Successfully Destroyed Tickets" end return kd end + +return mymodule |