[PATCH 2/2] linux: posix_spawn: return EINVAL on argc < 1

Cristian Rodríguez crrodriguez@opensuse.org
Fri Jan 28 13:39:37 GMT 2022


posix_spawn allows argc < 1 but the specification says that
"The value in argv[0] should point to a filename string.."
So there must be at least one non-null argument.

Signed-off-by: Cristian Rodríguez <crrodriguez@opensuse.org>
---
 sysdeps/unix/sysv/linux/spawni.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/sysdeps/unix/sysv/linux/spawni.c b/sysdeps/unix/sysv/linux/spawni.c
index 93359c708b..23617c9165 100644
--- a/sysdeps/unix/sysv/linux/spawni.c
+++ b/sysdeps/unix/sysv/linux/spawni.c
@@ -334,6 +334,11 @@ __spawnix (pid_t * pid, const char *file,
 	errno = E2BIG;
 	return errno;
       }
+    if (argc < 1)
+      {
+	errno = EINVAL;
+	return errno;
+      }
 
   int prot = (PROT_READ | PROT_WRITE
 	     | ((GL (dl_stack_flags) & PF_X) ? PROT_EXEC : 0));
-- 
2.34.1



More information about the Libc-alpha mailing list