From: Miroslav Lichvar Date: Thu, 28 Nov 2013 17:14:38 +0000 (+0100) Subject: Write fatal messages also to stderr when started with -n X-Git-Tag: 1.30-pre1~163 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=ed0ac6e3f6766629da1fe28075551904d3c23e18;p=thirdparty%2Fchrony.git Write fatal messages also to stderr when started with -n --- diff --git a/logging.c b/logging.c index 4b0f173a..5e5ae502 100644 --- a/logging.c +++ b/logging.c @@ -175,9 +175,16 @@ void LOG_Message(LOG_Severity severity, LOG_Facility facility, case LOGS_FATAL: log_message(1, severity, buf); - if (parent_fd) { - if (write(parent_fd, buf, strlen(buf) + 1) < 0) - ; /* Not much we can do here */ + /* With syslog, send the message also to the grandparent + process or write it to stderr if not detached */ + if (system_log) { + if (parent_fd > 0) { + if (write(parent_fd, buf, strlen(buf) + 1) < 0) + ; /* Not much we can do here */ + } else if (parent_fd == 0) { + system_log = 0; + log_message(1, severity, buf); + } } exit(1); @@ -222,7 +229,7 @@ LOG_CloseParentFd() { if (parent_fd > 0) close(parent_fd); - parent_fd = 0; + parent_fd = -1; } /* ================================================== */