/* $Id: setenv.c 616 2005-08-19 20:11:01Z bruce $ */ #include #include #include "sysdeps.h" #ifndef HASSETENV int setenv(const char* name, const char* value, int overwrite) { char* newenv; size_t namelen; size_t valuelen; if (!overwrite && getenv(name)) return 0; namelen = strlen(name); valuelen = strlen(value); newenv = malloc(namelen+1+valuelen+1); memcpy(newenv, name, namelen); newenv[namelen] = '='; memcpy(newenv+namelen+1, value, valuelen+1); return putenv(newenv); } #endif