]> git.ipfire.org Git - thirdparty/systemd.git/commit
process-util: add new FORK_DEATHSIG_SIGKILL flag, rename FORK_DEATHSIG → FORK_DEATHSI...
authorLennart Poettering <lennart@poettering.net>
Thu, 2 Nov 2023 10:04:36 +0000 (11:04 +0100)
committerLennart Poettering <lennart@poettering.net>
Thu, 2 Nov 2023 13:09:23 +0000 (14:09 +0100)
commite9ccae31355b8d4fd7496b0548470c8c977897d8
tree13c5f4246df81fa08c396303b14acf15ccdcc2a5
parent61c062f896a9a59cab6899d3c8ba3e3d1e4e0c61
process-util: add new FORK_DEATHSIG_SIGKILL flag, rename FORK_DEATHSIG → FORK_DEATHSIG_SIGTERM

Sometimes it makes sense to hard kill a client if we die. Let's hence
add a third FORK_DEATHSIG flag for this purpose: FORK_DEATHSIG_SIGKILL.

To make things less confusing this also renames FORK_DEATHSIG to
FORK_DEATHSIG_SIGTERM to make clear it sends SIGTERM. We already had
FORK_DEATHSIG_SIGINT, hence this makes things nicely symmetric.

A bunch of users are switched over for FORK_DEATHSIG_SIGKILL where we
know it's safe to abort things abruptly. This should make some kernel
cases more robust, since we cannot get confused by signal masks or such.

While we are at it, also fix a bunch of bugs where we didn't take
FORK_DEATHSIG_SIGINT into account in safe_fork()
65 files changed:
src/basic/namespace-util.c
src/basic/process-util.c
src/basic/process-util.h
src/basic/terminal-util.c
src/basic/time-util.c
src/core/exec-credential.c
src/core/exec-invoke.c
src/core/unit.c
src/coredump/coredump.c
src/coredump/coredumpctl.c
src/delta/delta.c
src/fsck/fsck.c
src/home/homectl.c
src/home/homed-home.c
src/home/homework-cifs.c
src/home/homework-fscrypt.c
src/home/homework-luks.c
src/import/import-common.c
src/import/importd.c
src/import/pull-common.c
src/journal-remote/journal-remote-main.c
src/libsystemd/sd-bus/bus-container.c
src/login/inhibit.c
src/login/logind-brightness.c
src/machine/machine-dbus.c
src/nspawn/nspawn-setuid.c
src/nspawn/nspawn.c
src/partition/repart.c
src/portable/portable.c
src/quotacheck/quotacheck.c
src/remount-fs/remount-fs.c
src/resolve/test-resolved-stream.c
src/shared/calendarspec.c
src/shared/dissect-image.c
src/shared/edit-util.c
src/shared/exec-util.c
src/shared/logs-show.c
src/shared/mkfs-util.c
src/shared/mount-util.c
src/shared/pager.c
src/shared/varlink.c
src/socket-activate/socket-activate.c
src/sulogin-shell/sulogin-shell.c
src/sysext/sysext.c
src/systemctl/systemctl-start-special.c
src/systemctl/systemctl-sysv-compat.c
src/sysupdate/sysupdate-resource.c
src/sysupdate/sysupdate-transfer.c
src/test/test-async.c
src/test/test-capability.c
src/test/test-data-fd-util.c
src/test/test-env-util.c
src/test/test-execute.c
src/test/test-fd-util.c
src/test/test-fileio.c
src/test/test-mempress.c
src/test/test-mkdir.c
src/test/test-mount-util.c
src/test/test-process-util.c
src/test/test-rm-rf.c
src/test/test-socket-util.c
src/udev/udev-manager.c
src/udev/udev-spawn.c
src/udev/udevadm-lock.c
src/userdb/userdbd-manager.c