From f5bb36dcfe71dab3f79e8e6133a2f4260d91f213 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Tue, 27 Jun 2023 11:19:47 +0200 Subject: [PATCH] execute: don't bother with chowning StateDirectory= and friends in user mode --- src/core/execute.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/core/execute.c b/src/core/execute.c index 652ff444221..d850a680221 100644 --- a/src/core/execute.c +++ b/src/core/execute.c @@ -2738,6 +2738,11 @@ static int setup_exec_directory( if (r < 0) goto fail; + /* Skip the rest (which deals with ownership) in user mode, since ownership changes are not + * available to user code anyway */ + if (params->runtime_scope != RUNTIME_SCOPE_SYSTEM) + continue; + /* Then, change the ownership of the whole tree, if necessary. When dynamic users are used we * drop the suid/sgid bits, since we really don't want SUID/SGID files for dynamic UID/GID * assignments to exist. */