1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/patches/glibc/2.1.3/rh62-01-glibc-2.1.3-security.patch Wed May 23 20:49:02 2007 +0000
1.3 @@ -0,0 +1,32 @@
1.4 +2000-05-03 Ulrich Drepper <drepper@redhat.com>
1.5 +
1.6 + * sysdeps/generic/dl-environ.c (unsetenv): Follow change to the
1.7 + real unsetenv implementation from 1999-07-29 [PR libc/1714].
1.8 +
1.9 +--- glibc-2.1.3/sysdeps/generic/dl-environ.c.jj Thu Jul 23 16:56:52 1998
1.10 ++++ glibc-2.1.3/sysdeps/generic/dl-environ.c Tue May 9 13:48:11 2000
1.11 +@@ -1,5 +1,5 @@
1.12 +-/*Environment handling for dynamic loader.
1.13 +- Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
1.14 ++/* Environment handling for dynamic loader.
1.15 ++ Copyright (C) 1995, 1996, 1997, 1998, 2000 Free Software Foundation, Inc.
1.16 + This file is part of the GNU C Library.
1.17 +
1.18 + The GNU C Library is free software; you can redistribute it and/or
1.19 +@@ -55,7 +55,8 @@ unsetenv (const char *name)
1.20 + const size_t len = strlen (name);
1.21 + char **ep;
1.22 +
1.23 +- for (ep = _environ; *ep != NULL; ++ep)
1.24 ++ ep = _environ;
1.25 ++ while (*ep != NULL)
1.26 + if (!strncmp (*ep, name, len) && (*ep)[len] == '=')
1.27 + {
1.28 + /* Found it. Remove this pointer by moving later ones back. */
1.29 +@@ -66,4 +67,6 @@ unsetenv (const char *name)
1.30 + while (*dp++);
1.31 + /* Continue the loop in case NAME appears again. */
1.32 + }
1.33 ++ else
1.34 ++ ++ep;
1.35 + }