From d770252d3a6dfe5e97d1a6846e2e5bfde92accc2 Mon Sep 17 00:00:00 2001 From: Damien Miller Date: Mon, 22 Nov 1999 16:11:05 +1100 Subject: - Added a setenv replacement for systems which lack it --- helper.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'helper.c') diff --git a/helper.c b/helper.c index 47e797b6c..91a78b577 100644 --- a/helper.c +++ b/helper.c @@ -149,3 +149,24 @@ void setproctitle(const char *fmt, ...) /* FIXME */ } #endif /* !HAVE_SETPROCTITLE */ + +#ifndef HAVE_SETENV +int setenv(const char *name, const char *value, int overwrite) +{ + char *env_string; + int result; + + /* Don't overwrite existing env. var if overwrite is 0 */ + if (!overwrite && (getenv(name) != NULL)) + return(0); + + env_string = xmalloc(strlen(name) + strlen(value) + 2); + sprintf(env_string, "%s=%s", name, value); + + result = putenv(env_string); + + xfree(env_string); + + return(result); +} +#endif /* !HAVE_SETENV */ -- cgit v1.2.3