Go to most recent revision |
Blame |
Last modification |
View Log
| Download
| RSS feed
/* Copyright (C) 1996 DJ Delorie, see COPYING.DJ for details */
#include <libc/stubs.h>
#include <stdlib.h>
#include <string.h>
int
setenv (const char *var, const char *val, int replace)
{
char *prev;
if (var == (char *)0 || val == (char *)0)
return -1;
if ((prev
= getenv (var
)) && !replace
)
return 0;
else
{
char *envstr
= (char *)alloca
(l_var
+ strlen (val
) + 2);
char *peq
= strchr (var
, '=');
if (*val == '=')
++val;
if (peq)
l_var = peq - var;
envstr[l_var++] = '=';
return putenv (envstr);
}
}