From b9e7998b5351d0ce465e45665f3370896f792bac Mon Sep 17 00:00:00 2001 From: Tim Ledbetter Date: Sun, 25 Jun 2023 11:48:40 +0100 Subject: [PATCH] LibC: Return EINVAL from `unsetenv()` if input is empty or contains "=" --- Userland/Libraries/LibC/stdlib.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Userland/Libraries/LibC/stdlib.cpp b/Userland/Libraries/LibC/stdlib.cpp index bdda8c4310..bedd5f4675 100644 --- a/Userland/Libraries/LibC/stdlib.cpp +++ b/Userland/Libraries/LibC/stdlib.cpp @@ -431,6 +431,11 @@ char* secure_getenv(char const* name) int unsetenv(char const* name) { auto new_var_len = strlen(name); + if (new_var_len == 0 || strchr(name, '=')) { + errno = EINVAL; + return -1; + } + size_t environ_size = 0; int skip = -1;