summaryrefslogtreecommitdiffstats
path: root/fetchmail-model.lua
diff options
context:
space:
mode:
Diffstat (limited to 'fetchmail-model.lua')
-rw-r--r--fetchmail-model.lua12
1 files changed, 2 insertions, 10 deletions
diff --git a/fetchmail-model.lua b/fetchmail-model.lua
index d7a93e2..0a6cc68 100644
--- a/fetchmail-model.lua
+++ b/fetchmail-model.lua
@@ -390,28 +390,20 @@ end
function startstop_service(action)
local result = modelfunctions.startstop_service(processname, action)
- --[[
- -- Removed support for Run and Test because needs to run as fetchmail user due to init.d change
- -- trying to run as user fetchmail caused problems where could not save session (no longer root?)
- -- also, questioned reason for these functions because they will appear broken when working
- -- because fetchmail takes so long to return
table.insert(result.value.actions.value, "Run")
table.insert(result.value.actions.value, "Test")
if action and (action:lower() == "run" or action:lower() == "test") then
result.value.result.errtxt = nil
local cmd
if action:lower() == "run" then
- cmd = "/usr/bin/fetchmail -d0 -v --nosyslog -f "..configfile.." 2>&1"
+ cmd = 'su -s /bin/sh -c "/usr/bin/fetchmail -d0 -v --nosyslog -f '..configfile..' 2>&1" - fetchmail'
elseif action:lower() == "test" then
- cmd = "/usr/bin/fetchmail -d0 -v -k --nosyslog -f "..configfile.." 2>&1"
+ cmd = 'su -s /bin/sh -c "/usr/bin/fetchmail -d0 -v -k --nosyslog -f '..configfile..' 2>&1" - fetchmail'
end
- --posix.setpid("u", "fetchmail")
local f = io.popen(cmd)
result.value.result.value = f:read("*a")
f:close()
- --posix.setpid("u", "root")
end
- --]]
return result
end