1 /*- 2 * Copyright (c) 1988 The Regents of the University of California. 3 * All rights reserved. 4 * 5 * %sccs.include.redist.c% 6 */ 7 8 #if defined(LIBC_SCCS) && !defined(lint) 9 static char sccsid[] = "@(#)putenv.c 5.3 (Berkeley) 05/17/90"; 10 #endif /* LIBC_SCCS and not lint */ 11 12 #include <stdlib.h> 13 #include <string.h> 14 15 int 16 putenv(str) 17 char *str; 18 { 19 register char *p, *equal; 20 int rval; 21 22 if (!(p = strdup(str))) 23 return(1); 24 if (!(equal = index(p, '='))) { 25 (void)free(p); 26 return(1); 27 } 28 *equal = '\0'; 29 rval = setenv(p, equal + 1, 1); 30 (void)free(p); 31 return(rval); 32 } 33