commit 514b100944d0b61d8e8a295ab3cd534be4cfd344
parent 9246a13738fc21d08aab20382b67c5dadb4ff8ae
Author: sin <sin@2f30.org>
Date: Mon, 10 Feb 2014 14:53:51 +0000
Unblock signals before exec
Diffstat:
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/sinit.c b/sinit.c
@@ -26,11 +26,12 @@ static struct {
#include "config.h"
+static sigset_t set;
+
int
main(void)
{
struct signalfd_siginfo si;
- sigset_t set;
int fd;
int i;
ssize_t n;
@@ -93,6 +94,7 @@ spawn(char *const argv[])
if (pid < 0) {
weprintf("sinit: fork:");
} else if (pid == 0) {
+ sigprocmask(SIG_UNBLOCK, &set, NULL);
setsid();
setpgid(0, 0);
execvp(argv[0], argv);