@@ -240,7 +240,8 @@ setenv (name, value, replace)
const char *value;
int replace;
{
- if (name == NULL || *name == '\0' || strchr (name, '=') != NULL)
+ if (name == NULL || *name == '\0' || strchr (name, '=') != NULL
+ || value == NULL)
{
__set_errno (EINVAL);
return -1;
@@ -197,6 +197,13 @@ do_test (void)
}
errno = 0;
+ if (setenv (VAR, NULL, 1) >= 0 || errno != EINVAL)
+ {
+ puts ("setenv #7 failed");
+ result = 1;
+ }
+
+ errno = 0;
if (unsetenv (NULL) >= 0 || errno != EINVAL)
{
puts ("unsetenv #1 failed");