OSDN Git Service

Retire LDP man-pages repository
[linuxjm/LDP_man-pages.git] / original / man3 / putenv.3
diff --git a/original/man3/putenv.3 b/original/man3/putenv.3
deleted file mode 100644 (file)
index 7ffb51e..0000000
+++ /dev/null
@@ -1,132 +0,0 @@
-.\" Copyright 1993 David Metcalfe (david@prism.demon.co.uk)
-.\"
-.\" %%%LICENSE_START(VERBATIM)
-.\" Permission is granted to make and distribute verbatim copies of this
-.\" manual provided the copyright notice and this permission notice are
-.\" preserved on all copies.
-.\"
-.\" Permission is granted to copy and distribute modified versions of this
-.\" manual under the conditions for verbatim copying, provided that the
-.\" entire resulting derived work is distributed under the terms of a
-.\" permission notice identical to this one.
-.\"
-.\" Since the Linux kernel and libraries are constantly changing, this
-.\" manual page may be incorrect or out-of-date.  The author(s) assume no
-.\" responsibility for errors or omissions, or for damages resulting from
-.\" the use of the information contained herein.  The author(s) may not
-.\" have taken the same level of care in the production of this manual,
-.\" which is licensed free of charge, as they might when working
-.\" professionally.
-.\"
-.\" Formatted or processed versions of this manual, if unaccompanied by
-.\" the source, must acknowledge the copyright and authors of this work.
-.\" %%%LICENSE_END
-.\"
-.\" References consulted:
-.\"     Linux libc source code
-.\"     Lewine's _POSIX Programmer's Guide_ (O'Reilly & Associates, 1991)
-.\"     386BSD man pages
-.\"    Single UNIX Specification, Version 2
-.\" Modified Thu Apr  8 15:00:12 1993, David Metcalfe
-.\" Modified Sat Jul 24 18:44:45 1993, Rik Faith (faith@cs.unc.edu)
-.\" Modified Fri Feb 14 21:47:50 1997 by Andries Brouwer (aeb@cwi.nl)
-.\" Modified Mon Oct 11 11:11:11 1999 by Andries Brouwer (aeb@cwi.nl)
-.\" Modified Wed Nov 10 00:02:26 1999 by Andries Brouwer (aeb@cwi.nl)
-.\" Modified Sun May 20 22:17:20 2001 by Andries Brouwer (aeb@cwi.nl)
-.TH PUTENV 3  2014-08-19 "GNU" "Linux Programmer's Manual"
-.SH NAME
-putenv \- change or add an environment variable
-.SH SYNOPSIS
-.nf
-.B #include <stdlib.h>
-.sp
-.BI "int putenv(char *" string );
-.\" Not: const char *
-.fi
-.sp
-.in -4n
-Feature Test Macro Requirements for glibc (see
-.BR feature_test_macros (7)):
-.in
-.sp
-.BR putenv ():
-_SVID_SOURCE || _XOPEN_SOURCE
-.SH DESCRIPTION
-The
-.BR putenv ()
-function adds or changes the value of environment
-variables.
-The argument \fIstring\fP is of the form \fIname\fP=\fIvalue\fP.
-If \fIname\fP does not already exist in the environment, then
-\fIstring\fP is added to the environment.
-If \fIname\fP does exist,
-then the value of \fIname\fP in the environment is changed to
-\fIvalue\fP.
-The string pointed to by \fIstring\fP becomes part of the environment,
-so altering the string changes the environment.
-.SH RETURN VALUE
-The
-.BR putenv ()
-function returns zero on success,
-or nonzero if an error occurs.
-In the event of an error,
-.I errno
-is set to indicate the cause.
-.SH ERRORS
-.TP
-.B ENOMEM
-Insufficient space to allocate new environment.
-.SH CONFORMING TO
-SVr4, POSIX.1-2001, 4.3BSD.
-.SH NOTES
-The
-.BR putenv ()
-function is not required to be reentrant, and the
-one in glibc 2.0 is not, but the glibc 2.1 version is.
-.\" .LP
-.\" Description for libc4, libc5, glibc:
-.\" If the argument \fIstring\fP is of the form \fIname\fP,
-.\" and does not contain an \(aq=\(aq character, then the variable \fIname\fP
-.\" is removed from the environment.
-.\" If
-.\" .BR putenv ()
-.\" has to allocate a new array \fIenviron\fP,
-.\" and the previous array was also allocated by
-.\" .BR putenv (),
-.\" then it will be freed.
-.\" In no case will the old storage associated
-.\" to the environment variable itself be freed.
-.LP
-Since version 2.1.2, the glibc implementation conforms to SUSv2:
-the pointer \fIstring\fP given to
-.BR putenv ()
-is used.
-In particular, this string becomes part of the environment;
-changing it later will change the environment.
-(Thus, it is an error is to call
-.BR putenv ()
-with an automatic variable
-as the argument, then return from the calling function while \fIstring\fP
-is still part of the environment.)
-However, glibc versions 2.0 to 2.1.1 differ: a copy of the string is used.
-On the one hand this causes a memory leak, and on the other hand
-it violates SUSv2.
-.LP
-The 4.4BSD version, like glibc 2.0, uses a copy.
-.LP
-SUSv2 removes the \fIconst\fP from the prototype, and so does glibc 2.1.3.
-.SH SEE ALSO
-.BR clearenv (3),
-.BR getenv (3),
-.BR setenv (3),
-.BR unsetenv (3),
-.BR environ (7)
-.SH COLOPHON
-This page is part of release 3.79 of the Linux
-.I man-pages
-project.
-A description of the project,
-information about reporting bugs,
-and the latest version of this page,
-can be found at
-\%http://www.kernel.org/doc/man\-pages/.