core: fix shutdown of --user
Shutting down a user session currently fails with:
Sep 22 22:35:38 david-t2 systemd[640]: Reached target Shutdown.
Sep 22 22:35:38 david-t2 systemd[640]: Starting Exit the Session...
Sep 22 22:35:38 david-t2 systemd[640]: Received SIGRTMIN+24 from PID 659 (kill).
Sep 22 22:35:38 david-t2 systemd[640]: Shutting down.
Sep 22 22:35:38 david-t2 systemd[640]: Not executed by init (PID 1).
Sep 22 22:35:38 david-t2 systemd[640]: Critical error while doing system shutdown: Operation not permitted
This is a regression from:
commit 287419c119
Author: Alban Crequy <alban.crequy@gmail.com>
Date: Fri Sep 18 13:37:34 2015 +0200
containers: systemd exits with non-zero code
Make sure we never ever execute systemd-shutdown from within a
user-manager. Restore the previous behavior by partially reverting given
commit.
This commit is contained in:
@@ -1807,6 +1807,13 @@ int main(int argc, char *argv[]) {
|
||||
goto finish;
|
||||
|
||||
case MANAGER_EXIT:
|
||||
if (m->running_as == MANAGER_USER) {
|
||||
retval = EXIT_SUCCESS;
|
||||
log_debug("Exit.");
|
||||
goto finish;
|
||||
}
|
||||
|
||||
/* fallthrough */
|
||||
case MANAGER_REBOOT:
|
||||
case MANAGER_POWEROFF:
|
||||
case MANAGER_HALT:
|
||||
|
||||
Reference in New Issue
Block a user