chiark / gitweb /
mount: use /dev/.run as an early boot alias for /var/run
[elogind.git] / src / kmsg-syslogd.c
index f5c8e7121d19a7a48fdf5aa1420a85519e0643ee..4edb16136b58cb6ac1a53b37b2cc159138c86f04 100644 (file)
@@ -39,7 +39,6 @@
 #include "fdset.h"
 
 #define SERVER_FD_MAX 16
-#define TIMEOUT ((int) (10*MSEC_PER_SEC))
 
 typedef struct Stream Stream;
 
@@ -473,16 +472,16 @@ static int process_event(Server *s, struct epoll_event *ev) {
 
 int main(int argc, char *argv[]) {
         Server server;
-        int r = 3, n;
+        int r = EXIT_FAILURE, n;
 
         if (getppid() != 1) {
                 log_error("This program should be invoked by init only.");
-                return 1;
+                return EXIT_FAILURE;
         }
 
         if (argc > 1) {
                 log_error("This program does not take arguments.");
-                return 1;
+                return EXIT_FAILURE;
         }
 
         log_set_target(LOG_TARGET_KMSG);
@@ -491,16 +490,16 @@ int main(int argc, char *argv[]) {
 
         if ((n = sd_listen_fds(true)) < 0) {
                 log_error("Failed to read listening file descriptors from environment: %s", strerror(-r));
-                return 1;
+                return EXIT_FAILURE;
         }
 
         if (n <= 0 || n > SERVER_FD_MAX) {
                 log_error("No or too many file descriptors passed.");
-                return 2;
+                return EXIT_FAILURE;
         }
 
         if (server_init(&server, (unsigned) n) < 0)
-                return 3;
+                return EXIT_FAILURE;
 
         log_debug("systemd-kmsg-syslogd running as pid %lu", (unsigned long) getpid());
 
@@ -512,7 +511,7 @@ int main(int argc, char *argv[]) {
                 struct epoll_event event;
                 int k;
 
-                if ((k = epoll_wait(server.epoll_fd, &event, 1, TIMEOUT)) < 0) {
+                if ((k = epoll_wait(server.epoll_fd, &event, 1, -1)) < 0) {
 
                         if (errno == EINTR)
                                 continue;
@@ -531,7 +530,7 @@ int main(int argc, char *argv[]) {
                         break;
         }
 
-        r = 0;
+        r = EXIT_SUCCESS;
 
         log_debug("systemd-kmsg-syslogd stopped as pid %lu", (unsigned long) getpid());