]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
logind: honour killProcesses field of user record
authorLennart Poettering <lennart@poettering.net>
Fri, 9 Aug 2019 11:46:25 +0000 (13:46 +0200)
committerLennart Poettering <lennart@poettering.net>
Wed, 15 Jan 2020 14:29:24 +0000 (15:29 +0100)
src/login/logind-session.c

index f9e122975e2516a1c3f3adfa273621ffeefea326..48505122a9decf670e04c1ea6401cc97131b8e1d 100644 (file)
@@ -750,7 +750,10 @@ static int session_stop_scope(Session *s, bool force) {
         s->scope_job = mfree(s->scope_job);
 
         /* Optionally, let's kill everything that's left now. */
-        if (force || manager_shall_kill(s->manager, s->user->user_record->user_name)) {
+        if (force ||
+            (s->user->user_record->kill_processes != 0 &&
+             (s->user->user_record->kill_processes > 0 ||
+              manager_shall_kill(s->manager, s->user->user_record->user_name)))) {
 
                 r = manager_stop_unit(s->manager, s->scope, &error, &s->scope_job);
                 if (r < 0) {