X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/bdd372a64811c52e2924c6d391ce6801aabc8ada..ab68a8e9ce58ea759f71bc8971cc73c97fd895f6:/stglibs/scriptexecuter.lib/scriptexecuter.c?ds=sidebyside diff --git a/stglibs/scriptexecuter.lib/scriptexecuter.c b/stglibs/scriptexecuter.lib/scriptexecuter.c index 021407dd..728082ae 100644 --- a/stglibs/scriptexecuter.lib/scriptexecuter.c +++ b/stglibs/scriptexecuter.lib/scriptexecuter.c @@ -1,15 +1,14 @@ #include #include #include + #include #include - #include #include #include -#include "scriptexecuter.h" - +#include "stg/scriptexecuter.h" #define MAX_SCRIPT_LEN (1100) @@ -41,27 +40,29 @@ if (msgsnd(msgid, (void *)&sd, MAX_SCRIPT_LEN, 0) < 0) return 0; } //----------------------------------------------------------------------------- -#ifdef LINUX +#if defined(LINUX) || defined(DARWIN) void Executer(int msgID, pid_t pid, char * procName) #else void Executer(int msgID, pid_t pid) #endif { +int ret; +struct SCRIPT_DATA sd; +struct sigaction newsa, oldsa; +sigset_t sigmask; + msgid = msgID; if (pid) return; nonstop = 1; -#ifdef LINUX +#if defined(LINUX) || defined(DARWIN) memset(procName, 0, strlen(procName)); strcpy(procName, "stg-exec"); #else setproctitle("stg-exec"); #endif -struct sigaction newsa, oldsa; -sigset_t sigmask; - sigemptyset(&sigmask); sigaddset(&sigmask, SIGTERM); newsa.sa_handler = SIG_IGN; @@ -90,10 +91,6 @@ newsa.sa_mask = sigmask; newsa.sa_flags = 0; sigaction(SIGUSR1, &newsa, &oldsa); -int ret; - -struct SCRIPT_DATA sd; - while (nonstop) { sd.mtype = 1; @@ -104,7 +101,7 @@ while (nonstop) usleep(20000); continue; } - int ret = system(sd.script); + ret = system(sd.script); if (ret == -1) { // Fork failed