| From 96026a3763264eb41a2c3e374f232f6e543284a8 Mon Sep 17 00:00:00 2001 |
| From: Khem Raj <raj.khem@gmail.com> |
| Date: Wed, 9 Nov 2016 19:33:49 -0800 |
| Subject: [PATCH 08/19] nspawn: Use execvpe only when libc supports it |
| |
| Upstream-Status: Denied [no desire for uclibc support] |
| |
| Signed-off-by: Khem Raj <raj.khem@gmail.com> |
| --- |
| src/nspawn/nspawn.c | 7 +++++++ |
| 1 file changed, 7 insertions(+) |
| |
| diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c |
| index 9b9ae90..19b47cd 100644 |
| --- a/src/nspawn/nspawn.c |
| +++ b/src/nspawn/nspawn.c |
| @@ -123,6 +123,8 @@ typedef enum LinkJournal { |
| LINK_GUEST |
| } LinkJournal; |
| |
| +#include "config.h" |
| + |
| static char *arg_directory = NULL; |
| static char *arg_template = NULL; |
| static char *arg_chdir = NULL; |
| @@ -2871,7 +2873,12 @@ static int inner_child( |
| a[0] = (char*) "/sbin/init"; |
| execve(a[0], a, env_use); |
| } else if (!strv_isempty(arg_parameters)) |
| +#ifdef HAVE_EXECVPE |
| execvpe(arg_parameters[0], arg_parameters, env_use); |
| +#else |
| + environ = env_use; |
| + execvp(arg_parameters[0], arg_parameters); |
| +#endif /* HAVE_EXECVPE */ |
| else { |
| if (!arg_chdir) |
| /* If we cannot change the directory, we'll end up in /, that is expected. */ |
| -- |
| 2.10.2 |
| |