#include "stg/plugin.h"
#include "stg/logger.h"
#include "stg/scriptexecuter.h"
-#include "stg/conffiles.h"
#include "stg/version.h"
-#include "stg/pinger.h"
#include "stg_timer.h"
#include "settings_impl.h"
#include "users_impl.h"
#define START_FILE "/._ST_ART_ED_"
set<pid_t> executersPid;
-static pid_t stgChildPid;
//-----------------------------------------------------------------------------
bool StartModCmp(const PLUGIN_RUNNER & lhs, const PLUGIN_RUNNER & rhs)
#endif
{
#ifndef NO_DAEMON
-stgChildPid = fork();
+pid_t childPid = fork();
string startFile = confDir + START_FILE;
unlink(startFile.c_str());
-switch (stgChildPid)
+switch (childPid)
{
case -1:
return -1;
PIDFile pidFile(settings->GetPIDFileName());
+sigset_t signalSet;
+sigfillset(&signalSet);
+pthread_sigmask(SIG_BLOCK, &signalSet, NULL);
+
StartTimer();
WaitTimer();
if (!IsStgTimerRunning())
while (true)
{
- sigset_t signalSet;
sigfillset(&signalSet);
int sig = 0;
sigwait(&signalSet, &sig);