diff options
author | Mika Havela <mika.havela@gmail.com> | 2007-12-21 18:42:14 +0000 |
---|---|---|
committer | Mika Havela <mika.havela@gmail.com> | 2007-12-21 18:42:14 +0000 |
commit | b9bbde3d9013b7ed4d73421bfffb79f4d963e528 (patch) | |
tree | 6cb2a540307bb330174ff7fe9a83703e20040206 /snort-controller.lua | |
download | acf-snort-b9bbde3d9013b7ed4d73421bfffb79f4d963e528.tar.bz2 acf-snort-b9bbde3d9013b7ed4d73421bfffb79f4d963e528.tar.xz |
Added snort package to view snort-alarms and start/stop the daemonv1.0_alpha1
git-svn-id: svn://svn.alpinelinux.org/acf/snort/trunk@445 ab2d0c66-481e-0410-8bed-d214d4d58bed
Diffstat (limited to 'snort-controller.lua')
-rw-r--r-- | snort-controller.lua | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/snort-controller.lua b/snort-controller.lua new file mode 100644 index 0000000..880b6d6 --- /dev/null +++ b/snort-controller.lua @@ -0,0 +1,40 @@ +module (..., package.seeall) +require("posix") +-- Cause an http redirect to our "read" action +-- We use the self.conf table because it already has prefix,controller,etc +-- The redir code is defined in the application error handler (acf-controller) +local list_redir = function (self) + self.conf.action = "read" + self.conf.type = "redir" + error (self.conf) +end + +mvc={} +mvc.on_load = function(self, parent) + if (self.worker[self.conf.action] == nil ) or ( self.conf.action == "init" ) then + self.worker[self.conf.action] = list_redir(self) + end +end + +-- Public methods + +read = function (self) + local srvcmdresult = nil + local srvcmd = self.clientdata.srvcmd +-- local srvcmd = "start" + if (srvcmd ~= nil) then + srvcmdresult = self.model:service_control(srvcmd) + if (srvcmd == "stop") or (srvcmd == "restart") then + posix.sleep(3) -- Wait for the process to start|stop + else + posix.sleep(1) -- Wait for the process to start|stop + end + end + local alerts,alertresult = self.model:read_alert() + return ({status = self.model:getstatus(), + srvcmdresult=srvcmdresult, + alerts=alerts, + alertresult=alertresult, + url = ENV["SCRIPT_NAME"] .. self.conf.prefix .. self.conf.controller} ) +end + |