From: Lennart Poettering Date: Fri, 14 Jul 2017 16:59:41 +0000 (+0200) Subject: execute: don't pass unit ID in --user mode to journald for stream logging X-Git-Tag: v235~281^2~7 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c867611e0a123b81c890c7ee952b2944646d7f91;p=platform%2Fupstream%2Fsystemd.git execute: don't pass unit ID in --user mode to journald for stream logging When we create a log stream connection to journald, we pass along the unit ID. With this change we do this only when we run as system instance, not as user instance, to remove the ambiguity whether a user or system unit is specified. The effect of this change is minor: journald ignores the field anyway from clients with UID != 0. This patch hence only fixes the unit attribution for the --user instance of the root user. --- diff --git a/src/core/execute.c b/src/core/execute.c index b76b9b9..7481588 100644 --- a/src/core/execute.c +++ b/src/core/execute.c @@ -356,8 +356,8 @@ static int connect_logger_as( "%i\n" "%i\n" "%i\n", - context->syslog_identifier ? context->syslog_identifier : ident, - unit->id, + context->syslog_identifier ?: ident, + MANAGER_IS_SYSTEM(unit->manager) ? unit->id : "", context->syslog_priority, !!context->syslog_level_prefix, output == EXEC_OUTPUT_SYSLOG || output == EXEC_OUTPUT_SYSLOG_AND_CONSOLE,