summaryrefslogtreecommitdiff
path: root/src/libstddjb/sig_block.c
diff options
context:
space:
mode:
authorLaurent Bercot <ska-skaware@skarnet.org>2020-02-26 17:18:47 +0000
committerLaurent Bercot <ska-skaware@skarnet.org>2020-02-26 17:18:47 +0000
commit37e31f79514acfdff8ede65b73542b7abb1e61a5 (patch)
tree7c1048a43d048d9811736d16399bfca0afdd84a6 /src/libstddjb/sig_block.c
parentab9c34c0e7b6a6abc8374b0e5f6515c75342239e (diff)
downloadskalibs-37e31f79514acfdff8ede65b73542b7abb1e61a5.tar.xz
Explicitly unblock signals when selfpiped without signalfd
This is arguably a bugfix, since selfpipe without signalfd relies on signals being actually delivered, and a process may have inherited a nonempty sigprocmask. Also use SIG_BLOCK instead of SIG_SETMASK when using selfpipe_trapset() with signalfd, because we shouldn't unblock signals that may have previously been blocked. This is also arguably a bugfix. This commit is essential for using the version of s6-linux-init that blocks SIGINT before disablecad on kernels without signalfd. Without it, SIGINT never gets unblocked, so it's never delivered to s6-svscan.
Diffstat (limited to 'src/libstddjb/sig_block.c')
0 files changed, 0 insertions, 0 deletions