exec: prevent uninitialized memory access in osmo_system_nowait()
If (!env_whitelist && addl_env), osmo_environment_append() would
access uninitialized memory. If both are false, execle() would
also deal with garbage values. Let's ensure that at least the
first element of new_env[] is initialized.
Change-Id: Id3901de4692ef44e9e9c67b1804e027fc4ce7c18
Fixes: CID#206571
diff --git a/src/exec.c b/src/exec.c
index a9d8ce0..b806ad5 100644
--- a/src/exec.c
+++ b/src/exec.c
@@ -217,6 +217,9 @@
/* close all file descriptors above stdio */
osmo_close_all_fds_above(2);
+ /* man execle: "an array of pointers *must* be terminated by a null pointer" */
+ new_env[0] = NULL;
+
/* build the new environment */
if (env_whitelist)
osmo_environment_filter(new_env, ARRAY_SIZE(new_env), environ, env_whitelist);