diff options
author | Jim Kingdon <jkingdon@engr.sgi.com> | 1994-03-15 18:40:51 +0000 |
---|---|---|
committer | Jim Kingdon <jkingdon@engr.sgi.com> | 1994-03-15 18:40:51 +0000 |
commit | f93b941bdec27d25d9895af310d174aabb082d59 (patch) | |
tree | ccdeda8f222f206cb8d0ae88f88fc86db51b2396 /gdb/putenv.c | |
parent | 17221e410f1816b50bf4abfa6f242c44892e7f98 (diff) | |
download | gdb-f93b941bdec27d25d9895af310d174aabb082d59.zip gdb-f93b941bdec27d25d9895af310d174aabb082d59.tar.gz gdb-f93b941bdec27d25d9895af310d174aabb082d59.tar.bz2 |
* environ.c (set_in_environ): Eliminate special handling of PATH and
GNUTARGET.
* putenv.c: Removed, conflicts with system declaration of
putenv on RS/6000 running AIX 3.2.5, and above change makes it
unnecessary.
* Makefile.in: Change accordingly.
* procfs.c (procfs_create_inferior): Change comment accordingly.
Diffstat (limited to 'gdb/putenv.c')
-rw-r--r-- | gdb/putenv.c | 112 |
1 files changed, 0 insertions, 112 deletions
diff --git a/gdb/putenv.c b/gdb/putenv.c deleted file mode 100644 index b15516d..0000000 --- a/gdb/putenv.c +++ /dev/null @@ -1,112 +0,0 @@ -/****************************************************************/ -/* */ -/* putenv(3) */ -/* */ -/* Change or add an environment entry */ -/* */ -/****************************************************************/ -/* origination 1987-Oct-7 T. Holm */ -/****************************************************************/ - -/* -Path: hoptoad!pacbell!ames!ll-xn!mit-eddie!uw-beaver!ssc-vax!uvicctr!tholm -From: tholm@uvicctr.UUCP (Terrence W. Holm) -Newsgroups: comp.os.minix -Subject: putenv(3) -Message-ID: <395@uvicctr.UUCP> -Date: 5 May 88 06:40:52 GMT -Organization: University of Victoria, Victoria B.C. Canada - -EFTH Minix report #2 - May 1988 - putenv(3) - -This is an implementation of putenv(3) that we -wrote for Minix. Please consider this a public -domain program. -*/ - -#include <stdio.h> -#include <string.h> - -#define PSIZE sizeof(char *) - -extern char **environ; - -char *strchr(); -char *malloc(); - -/****************************************************************/ -/* */ -/* int */ -/* putenv( entry ) */ -/* */ -/* The "entry" should follow the form */ -/* "NAME=VALUE". This routine will search the */ -/* user environment for "NAME" and replace its */ -/* value with "VALUE". */ -/* */ -/* Note that "entry" is not copied, it is used */ -/* as the environment entry. This means that it */ -/* must not be unallocated or otherwise modifed */ -/* by the caller, unless it is replaced by a */ -/* subsequent putenv(). */ -/* */ -/* If the name is not found in the environment, */ -/* then a new vector of pointers is allocated, */ -/* "entry" is put at the end and the global */ -/* variable "environ" is updated. */ -/* */ -/* This function normally returns NULL, but -1 */ -/* is returned if it can not allocate enough */ -/* space using malloc(3), or "entry" does not */ -/* contain a '='. */ -/* */ -/****************************************************************/ - - -int -putenv( entry ) - char *entry; -{ - unsigned length; - unsigned size; - char *temp; - char **p; - char **new_environ; - - /* Find the length of the "NAME=" */ - - temp = strchr(entry,'='); - if ( temp == 0 ) - return( -1 ); - - length = (unsigned) (temp - entry + 1); - - - /* Scan through the environment looking for "NAME=" */ - - for ( p=environ; *p != 0 ; p++ ) - if ( strncmp( entry, *p, length ) == 0 ) - { - *p = entry; - return( 0 ); - } - - - /* The name was not found, build a bigger environment */ - - size = p - environ; - - new_environ = (char **) malloc( (size+2)*PSIZE ); - - if ( new_environ == (char **) NULL ) - return( -1 ); - - memcpy ((char *) new_environ, (char *) environ, size*PSIZE ); - - new_environ[size] = entry; - new_environ[size+1] = NULL; - - environ = new_environ; - - return(0); -} |