flag fields are u_int's
[unix-history] / usr / src / lib / libc / stdlib / putenv.c
... / ...
CommitLineData
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)
9static char sccsid[] = "@(#)putenv.c 5.4 (Berkeley) %G%";
10#endif /* LIBC_SCCS and not lint */
11
12#include <stdlib.h>
13#include <string.h>
14
15int
16putenv(str)
17 const 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}