#include <unistd.h>
#include <fcntl.h>
#include <sched.h>
-#include <sys/signal.h>
+#include <signal.h>
#include <assert.h>
#include <sys/prctl.h>
case RUN_AS_MKDIR_RECURSIVE:
return _mkdir_recursive;
default:
- ERR("Unknown command %d", (int) cmd)
+ ERR("Unknown command %d", (int) cmd);
return NULL;
}
}
}
static
-int reset_sighandler(void)
+void reset_sighandler(void)
{
- int sig, ret = 0;
+ int sig;
- for (sig = SIGHUP; sig <= SIGUNUSED; sig++) {
- /* Skip unblockable signals. */
- if (sig == SIGKILL || sig == SIGSTOP) {
- continue;
- }
- if (signal(sig, SIG_DFL) == SIG_ERR) {
- PERROR("reset signal %d", sig);
- ret = -1;
- goto end;
- }
+ DBG("Resetting run_as worker signal handlers to default");
+ for (sig = 1; sig <= 31; sig++) {
+ (void) signal(sig, SIG_DFL);
}
-end:
- return ret;
}
static