Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
putenv(3C)		 Standard C Library Functions		    putenv(3C)

NAME
       putenv -	change or add value to environment

SYNOPSIS
       #include	<stdlib.h>

       int putenv(char *string);

DESCRIPTION
       The  putenv() function makes the	value of the environment variable name
       equal to	value by altering an existing variable or creating a new  one.
       In either case, the string pointed to by	string becomes part of the en-
       vironment, so altering the string will change the environment.

       The string argument points to a string  of  the	form  name=value.  The
       space  used by string is	no longer used once a new string-defining name
       is passed to putenv().

       The putenv() function uses malloc(3C) to	enlarge	the environment.

       putenv()	is called, environment variables are not in  alphabetical  or-
       der.

RETURN VALUES
       Upon successful completion, putenv() returns 0. Otherwise, it returns a
       non-zero	value and sets errno to	indicate the error.

ERRORS
       The putenv() function may fail if:

       ENOMEM	       Insufficient memory was available.

USAGE
       The putenv() function can be safely called from multithreaded programs.
       Caution	must  be  exercised when using this function and getenv(3C) in
       multithreaded programs.
	These functions	examine	and modify  the	 environment  list,  which  is
       shared  by all threads in a program.  The system	prevents the list from
       being accessed simultaneously by	two different threads.	It  does  not,
       however,	 prevent  two threads from successively	accessing the environ-
       ment list using putenv()	or getenv().

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:

       +-----------------------------+-----------------------------+
       |      ATTRIBUTE	TYPE	     |	    ATTRIBUTE VALUE	   |
       +-----------------------------+-----------------------------+
       |Interface Stability	     |Standard			   |
       +-----------------------------+-----------------------------+
       |MT-Level		     |Safe			   |
       +-----------------------------+-----------------------------+

SEE ALSO
       exec(2),	 getenv(3C),  malloc(3C),  attributes(5),  environ(5),	 stan-
       dards(5)

WARNINGS
       The  string argument should not be an automatic variable.  It should be
       declared	static if it is	declared within	a function because  it	cannot
       be automatically	declared. A potential error is to call putenv()	with a
       pointer to an automatic variable	as the argument	and to then  exit  the
       calling function	while string is	still part of the environment.

SunOS 5.10			  7 Aug	2004			    putenv(3C)

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | USAGE | ATTRIBUTES | SEE ALSO | WARNINGS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=putenv&sektion=3c&manpath=SunOS+5.10>

home | help