core: only set the watchdog variables in ExecStart= lines
This commit is contained in:
parent
a0fef983ab
commit
b08af3b127
|
@ -1425,7 +1425,7 @@ static int build_environment(
|
|||
our_env[n_env++] = x;
|
||||
}
|
||||
|
||||
if (p->watchdog_usec > 0) {
|
||||
if ((p->flags & EXEC_SET_WATCHDOG) && p->watchdog_usec > 0) {
|
||||
if (asprintf(&x, "WATCHDOG_PID="PID_FMT, getpid()) < 0)
|
||||
return -ENOMEM;
|
||||
our_env[n_env++] = x;
|
||||
|
|
|
@ -218,6 +218,7 @@ typedef enum ExecFlags {
|
|||
EXEC_PASS_FDS = 1U << 4,
|
||||
EXEC_IS_CONTROL = 1U << 5,
|
||||
EXEC_SETENV_RESULT = 1U << 6,
|
||||
EXEC_SET_WATCHDOG = 1U << 7,
|
||||
} ExecFlags;
|
||||
|
||||
struct ExecParameters {
|
||||
|
|
|
@ -1743,7 +1743,7 @@ static void service_enter_start(Service *s) {
|
|||
r = service_spawn(s,
|
||||
c,
|
||||
timeout,
|
||||
EXEC_PASS_FDS|EXEC_APPLY_PERMISSIONS|EXEC_APPLY_CHROOT|EXEC_APPLY_TTY_STDIN,
|
||||
EXEC_PASS_FDS|EXEC_APPLY_PERMISSIONS|EXEC_APPLY_CHROOT|EXEC_APPLY_TTY_STDIN|EXEC_SET_WATCHDOG,
|
||||
&pid);
|
||||
if (r < 0)
|
||||
goto fail;
|
||||
|
@ -1955,7 +1955,7 @@ static void service_run_next_main(Service *s) {
|
|||
r = service_spawn(s,
|
||||
s->main_command,
|
||||
s->timeout_start_usec,
|
||||
EXEC_PASS_FDS|EXEC_APPLY_PERMISSIONS|EXEC_APPLY_CHROOT|EXEC_APPLY_TTY_STDIN,
|
||||
EXEC_PASS_FDS|EXEC_APPLY_PERMISSIONS|EXEC_APPLY_CHROOT|EXEC_APPLY_TTY_STDIN|EXEC_SET_WATCHDOG,
|
||||
&pid);
|
||||
if (r < 0)
|
||||
goto fail;
|
||||
|
|
Loading…
Reference in New Issue