Current Path : /usr/src/contrib/tcp_wrappers/ |
FreeBSD hs32.drive.ne.jp 9.1-RELEASE FreeBSD 9.1-RELEASE #1: Wed Jan 14 12:18:08 JST 2015 root@hs32.drive.ne.jp:/sys/amd64/compile/hs32 amd64 |
Current File : //usr/src/contrib/tcp_wrappers/setenv.c |
/* * Some systems do not have setenv(). This one is modeled after 4.4 BSD, but * is implemented in terms of portable primitives only: getenv(), putenv() * and malloc(). It should therefore be safe to use on every UNIX system. * * If clobber == 0, do not overwrite an existing variable. * * Returns nonzero if memory allocation fails. * * Author: Wietse Venema, Eindhoven University of Technology, The Netherlands. */ #ifndef lint static char sccsid[] = "@(#) setenv.c 1.1 93/03/07 22:47:58"; #endif /* setenv - update or insert environment (name,value) pair */ int setenv(name, value, clobber) char *name; char *value; int clobber; { char *malloc(); char *getenv(); char *cp; if (clobber == 0 && getenv(name) != 0) return (0); if ((cp = malloc(strlen(name) + strlen(value) + 2)) == 0) return (1); sprintf(cp, "%s=%s", name, value); return (putenv(cp)); }