chiark / gitweb /
umask: set umask of a number of sockets by default, even though we check creds on...
[elogind.git] / src / logger.c
index faa6c9721f2f3752692124c9592f992ce609cba7..435d5a7620d6521f9ccedaa04200bac915627d2b 100644 (file)
 #include "list.h"
 #include "sd-daemon.h"
 #include "tcpwrap.h"
+#include "def.h"
 
 #define STREAMS_MAX 4096
 #define SERVER_FD_MAX 16
-#define TIMEOUT ((int) (5*60*MSEC_PER_SEC))
+#define TIMEOUT_MSEC ((int) (DEFAULT_EXIT_USEC/USEC_PER_MSEC))
 
 typedef struct Stream Stream;
 
@@ -636,6 +637,8 @@ int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
 
+        umask(0022);
+
         if ((n = sd_listen_fds(true)) < 0) {
                 log_error("Failed to read listening file descriptors from environment: %s", strerror(-r));
                 return EXIT_FAILURE;
@@ -661,7 +664,7 @@ int main(int argc, char *argv[]) {
 
                 if ((k = epoll_wait(server.epoll_fd,
                                     &event, 1,
-                                    server.n_streams <= 0 ? TIMEOUT : -1)) < 0) {
+                                    server.n_streams <= 0 ? TIMEOUT_MSEC : -1)) < 0) {
 
                         if (errno == EINTR)
                                 continue;