diff options
author | Marius Bakke <mbakke@fastmail.com> | 2018-12-22 15:26:30 +0100 |
---|---|---|
committer | Marius Bakke <mbakke@fastmail.com> | 2018-12-22 15:26:30 +0100 |
commit | f30830b2e67d973f2363903dbe5b27269da1901a (patch) | |
tree | 851a3a361cde2e083c418c54a1932bd57096c5a0 /gnu/services/shepherd.scm | |
parent | 34f1838f04c7c359da8dbba86817499630ce7f01 (diff) | |
parent | 25ec3684e3529fae290d389ba11755c7e7c016ea (diff) | |
download | guix-f30830b2e67d973f2363903dbe5b27269da1901a.tar.gz guix-f30830b2e67d973f2363903dbe5b27269da1901a.zip |
Merge branch 'master' into staging
Diffstat (limited to 'gnu/services/shepherd.scm')
-rw-r--r-- | gnu/services/shepherd.scm | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/gnu/services/shepherd.scm b/gnu/services/shepherd.scm index 49d08cc30f..12d649f542 100644 --- a/gnu/services/shepherd.scm +++ b/gnu/services/shepherd.scm @@ -281,7 +281,17 @@ stored." (start service))) '#$(append-map shepherd-service-provision (filter shepherd-service-auto-start? - services))))))) + services))) + + ;; Hang up stdin. At this point, we assume that 'start' methods + ;; that required user interaction on the console (e.g., + ;; 'cryptsetup open' invocations, post-fsck emergency REPL) have + ;; completed. User interaction becomes impossible after this + ;; call; this avoids situations where services wrongfully lead + ;; PID 1 to read from stdin (the console), which users may not + ;; have access to (see <https://bugs.gnu.org/23697>). + (redirect-port (open-input-file "/dev/null") + (current-input-port)))))) (scheme-file "shepherd.conf" config))) |