run: Stop agents before we drop privileges

After dropping privileges, we won't be able to stop agents anymore
as our signals will get ignored.
This commit is contained in:
Daan De Meyer
2025-03-17 16:01:26 +01:00
parent 9e34c34b7b
commit a2425e8a8b

View File

@@ -2483,6 +2483,11 @@ static int start_transient_scope(sd_bus *bus) {
return log_oom();
}
/* Stop agents before we pass control away and before we drop privileges, to avoid TTY conflicts and
* before we become unable to stop agents. */
polkit_agent_close();
ask_password_agent_close();
if (arg_nice_set) {
if (setpriority(PRIO_PROCESS, 0, arg_nice) < 0)
return log_error_errno(errno, "Failed to set nice level: %m");
@@ -2571,10 +2576,6 @@ static int start_transient_scope(sd_bus *bus) {
}
}
/* Stop agents before we pass control away, to avoid TTY conflicts */
polkit_agent_close();
ask_password_agent_close();
execvpe(arg_cmdline[0], arg_cmdline, env);
return log_error_errno(errno, "Failed to execute: %m");