blob: 8dfb5e3c710face50c9d46c1275f8580c4272e24 [file] [log] [blame]
From 60bae9664fac03b3cc32eb8775e7b9ff34079f38 Mon Sep 17 00:00:00 2001
From: Chris Morin <cmtm@google.com>
Date: Mon, 11 Feb 2019 14:49:33 -0800
Subject: [PATCH] journald: put pid in tag for messages forwarded to syslog
journald needs CAP_SYS_ADMIN to forge the original log source's PID when
forwarding logs to syslog. journald hasn't been granted CAP_SYS_ADMIN due to
security concerns. Have journald always write the logging source's PID in the
log tag.
---
src/journal/journald-syslog.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/src/journal/journald-syslog.c b/src/journal/journald-syslog.c
index e8b6915335..45e64c4892 100644
--- a/src/journal/journald-syslog.c
+++ b/src/journal/journald-syslog.c
@@ -369,8 +369,12 @@ void server_process_syslog_message(
syslog_parse_identifier(&msg, &identifier, &pid);
+ /* journald can't forge SCM_CREDENTIALS on Chrome OS, so add them to
+ * the syslog tag for rsyslogd */
+ (void)forward_syslog_raw;
+
if (s->forward_to_syslog)
- forward_syslog_raw(s, priority, buf, raw_len, ucred, tv);
+ server_forward_syslog(s, priority, identifier, msg, ucred, tv);
if (s->forward_to_kmsg)
server_forward_kmsg(s, priority, identifier, msg, ucred);
--
2.21.0.1020.gf2820cf01a-goog