Allows for more control over executed processes. Signed-off-by: Nadav Tasher <tasherna...@gmail.com> --- runit/runsv.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/runit/runsv.c b/runit/runsv.c index 20a445319..27676e0be 100644 --- a/runit/runsv.c +++ b/runit/runsv.c @@ -280,6 +280,7 @@ static unsigned custom(struct svdir *s, char c) int w; char a[10]; struct stat st; + char* exec_argv[2]; if (s->islog) return 0; @@ -296,7 +297,9 @@ static unsigned custom(struct svdir *s, char c) /* child */ if (haslog && dup2(logpipe.wr, 1) == -1) warn2_cannot("setup stdout for ", a); - execl(a, a, (char *) NULL); + exec_argv[0] = a; + exec_argv[1] = NULL; + BB_EXECVP(exec_argv[0], exec_argv); fatal2_cannot("run ", a); } /* parent */ @@ -391,7 +394,7 @@ static void startservice(struct svdir *s) signal(SIGTERM, SIG_DFL); sig_unblock(SIGCHLD); sig_unblock(SIGTERM); - execv(arg[0], (char**) arg); + BB_EXECVP(arg[0], (char**) arg); fatal2_cannot(s->islog ? "start log/" : "start ", arg[0]); } /* parent */ -- 2.43.0 _______________________________________________ busybox mailing list busybox@busybox.net https://lists.busybox.net/mailman/listinfo/busybox