diff options
author | Mika Havela <mika.havela@gmail.com> | 2008-05-06 07:45:08 +0000 |
---|---|---|
committer | Mika Havela <mika.havela@gmail.com> | 2008-05-06 07:45:08 +0000 |
commit | 26a72bf1519a8933e3fabc884a024e72947008e0 (patch) | |
tree | b669c81220f0885a37faf8acf3ddb7c02bd8fc19 | |
parent | 1b8bad95d1204e4f3f90bfe4f212870d09c44918 (diff) | |
download | acf-squid-26a72bf1519a8933e3fabc884a024e72947008e0.tar.bz2 acf-squid-26a72bf1519a8933e3fabc884a024e72947008e0.tar.xz |
Changing start/stop/restart process to show stderr to the user (as for all other ACF's)
git-svn-id: svn://svn.alpinelinux.org/acf/squid/trunk@1103 ab2d0c66-481e-0410-8bed-d214d4d58bed
-rw-r--r-- | squid-advanced-html.lsp | 5 | ||||
-rw-r--r-- | squid-authentication-html.lsp | 5 | ||||
-rw-r--r-- | squid-basic-html.lsp | 3 | ||||
-rw-r--r-- | squid-controller.lua | 15 | ||||
-rw-r--r-- | squid-model.lua | 25 |
5 files changed, 18 insertions, 35 deletions
diff --git a/squid-advanced-html.lsp b/squid-advanced-html.lsp index 1d933b0..0121991 100644 --- a/squid-advanced-html.lsp +++ b/squid-advanced-html.lsp @@ -48,11 +48,10 @@ the configuration files for the service are changed. However, the changes will n <h1>MANAGEMENT</h1> <form action="" method="POST"> <dl> -<DT>Daemon control</DT> -<dd><input class="submit" type="submit" name="srvcmd" value="start" <? io.write( srv1fill ) ?>> +<DT>Daemon control</DT><dd><input class="submit" type="submit" name="srvcmd" value="start" <? io.write( srv1fill ) ?>> <input class="submit" type="submit" name="srvcmd" value="stop" <? io.write( srv2fill ) ?>> <input class="submit" type="submit" name="srvcmd" value="restart" <? io.write( srv2fill ) ?>> -<pre class="attention"><? io.write( service.message ) ?></pre></dd> +<? if (service.message) and (service.message.descr) and (#service.message.descr > 0) then ?><pre><? io.write( service.message.descr ) ?></pre><? end ?></dd> </dl> </form> diff --git a/squid-authentication-html.lsp b/squid-authentication-html.lsp index e3eac32..3835be6 100644 --- a/squid-authentication-html.lsp +++ b/squid-authentication-html.lsp @@ -115,10 +115,9 @@ the changes will not be <i>applied</i> until you restart the service.</dd> <h1>MANAGEMENT</h1> <form action="" method="POST"> <dl> -<DT>Daemon control</DT> -<dd><input class="submit" type="submit" name="srvcmd" value="start" <? io.write( srv1fill ) ?>> +<DT>Daemon control</DT><dd><input class="submit" type="submit" name="srvcmd" value="start" <? io.write( srv1fill ) ?>> <input class="submit" type="submit" name="srvcmd" value="stop" <? io.write( srv2fill ) ?>> <input class="submit" type="submit" name="srvcmd" value="restart" <? io.write( srv2fill ) ?>> -<pre class="attention"><? io.write( service.message ) ?></pre></dd> +<? if (service.message) and (service.message.descr) and (#service.message.descr > 0) then ?><pre><? io.write( service.message.descr ) ?></pre><? end ?></dd> </dl> </form> diff --git a/squid-basic-html.lsp b/squid-basic-html.lsp index ab96ea8..8d1cd43 100644 --- a/squid-basic-html.lsp +++ b/squid-basic-html.lsp @@ -109,13 +109,12 @@ until you restart the service.</DD> </form> <h1>MANAGEMENT</h1> - <form action="" method="POST"> <dl> <DT>Daemon control</DT><dd><input class="submit" type="submit" name="srvcmd" value="start" <? io.write( srv1fill ) ?>> <input class="submit" type="submit" name="srvcmd" value="stop" <? io.write( srv2fill ) ?>> <input class="submit" type="submit" name="srvcmd" value="restart" <? io.write( srv2fill ) ?>> -<? if #service.message > 0 then ?><pre><? io.write( service.message ) ?></pre><? end ?></dd> +<? if (service.message) and (service.message.descr) and (#service.message.descr > 0) then ?><pre><? io.write( service.message.descr ) ?></pre><? end ?></dd> </dl> </form> diff --git a/squid-controller.lua b/squid-controller.lua index 8ffe0cb..7014935 100644 --- a/squid-controller.lua +++ b/squid-controller.lua @@ -40,11 +40,11 @@ basic = function( self ) redirect(self, "dep") end - local service = { message="", status="", error="" } + local service = {} if self.clientdata.srvcmd then local srvcmd = self.clientdata.srvcmd if srvcmd == "start" or srvcmd == "stop" or srvcmd == "restart" then - service.message = self.model.service_control( srvcmd ) + service.srvcmdresult, service.message = self.model.service_control( srvcmd ) end end @@ -68,7 +68,6 @@ basic = function( self ) end service.status = self.model.get_status() --- info.status.value = service.status; service.config, service.error = self.model.get_basic_config() return ( cfe ({ option = option, service = service, info = info }) ) @@ -90,11 +89,11 @@ authentication = function( self ) extra = "" } - local service = { message="", status="", error="" } + local service = {} if self.clientdata.srvcmd then local srvcmd = self.clientdata.srvcmd if srvcmd == "start" or srvcmd == "stop" or srvcmd == "restart" then - service.message = self.model.service_control( srvcmd ) + service.srvcmdresult, service.message = self.model.service_control( srvcmd ) end end @@ -120,7 +119,6 @@ authentication = function( self ) end service.status = self.model.get_status() --- info.status.value = service.status service.config, service.error = self.model.get_basic_config() return ( cfe ({ option = option, service = service, info = info }) ) @@ -142,11 +140,11 @@ advanced = function( self ) extra = "" } - local service = { message="", status="", config="" } + local service = {} if self.clientdata.srvcmd then local srvcmd = self.clientdata.srvcmd if srvcmd == "start" or srvcmd == "stop" or srvcmd == "restart" then - service.message = self.model.service_control( srvcmd ) + service.srvcmdresult, service.message = self.model.service_control( srvcmd ) end end @@ -157,7 +155,6 @@ advanced = function( self ) end service.status = self.model.get_status() --- info.status.value = service.status service.config = self.model.get_adv_config() return ( cfe ({ option = option, service = service, info = info }) ) diff --git a/squid-model.lua b/squid-model.lua index e2b9285..f23f026 100644 --- a/squid-model.lua +++ b/squid-model.lua @@ -6,6 +6,7 @@ module (..., package.seeall) require("format") require("processinfo") require("procps") +require("daemoncontrol") -- Set variables local squidconf = "/etc/squid/squid.conf" @@ -121,24 +122,12 @@ get_status_winbindd = function() return retval end -service_control = function( control ) - - local retval = "" - - local ptr = io.popen( "/etc/init.d/squid " .. control, "r" ) - if ptr ~= nil then - local retmsg = ptr:read( "*a" ) - ptr:close() - if retmsg ~= nil then - retval = retmsg - else - retval = "service_control(): Failed to read output from initscript!\n" - end - else - retval = "service_control(): Failed to start/stop/restart service!\n" - end - - return retval +service_control = function( cmd ) + local action = {value=cmd} + local cmdresult,cmdmessage,cmderror,cmdaction = daemoncontrol.daemoncontrol(processname, cmd) + action.descr=cmdmessage + action.errtxt=cmderror + return cmdresult,action end service_control_winbindd = function( control ) |