chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
getty: don't parse console= anymore, use /sys/class/tty/console/active instead
[elogind.git]
/
src
/
user-sessions.c
diff --git
a/src/user-sessions.c
b/src/user-sessions.c
index dc4ee0fb4ac402a7c3332777b864f994812e4799..8026961560906818a9f2426af484d1ccb5383e22 100644
(file)
--- a/
src/user-sessions.c
+++ b/
src/user-sessions.c
@@
-40,16
+40,21
@@
int main(int argc, char*argv[]) {
log_open();
if (streq(argv[1], "start")) {
log_open();
if (streq(argv[1], "start")) {
+ int q = 0, r = 0;
- if (unlink("/var/run/nologin") < 0 ||
- unlink("/etc/nologin") < 0) {
+ if (unlink("/var/run/nologin") < 0 && errno != ENOENT) {
+ log_error("Failed to remove /var/run/nologin file: %m");
+ r = -errno;
+ }
- if (errno != ENOENT) {
- log_error("Failed to remove nologin files: %m");
- goto finish;
- }
+ if (unlink("/etc/nologin") < 0 && errno != ENOENT) {
+ log_error("Failed to remove /etc/nologin file: %m");
+ q = -errno;
}
}
+ if (r < 0 || q < 0)
+ goto finish;
+
} else if (streq(argv[1], "stop")) {
int r, q;
} else if (streq(argv[1], "stop")) {
int r, q;