From 664075a3bb1796ddc4254fcf9a85b98972e03681 Mon Sep 17 00:00:00 2001 From: Christopher Faylor Date: Sat, 29 Jun 2002 06:40:19 +0000 Subject: * environ.cc (spenv::from_cygheap): Still need to take setuid into consideration. --- winsup/cygwin/ChangeLog | 7 ++++++- winsup/cygwin/environ.cc | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) (limited to 'winsup') diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 983b961f1..9800f1cc1 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,8 @@ +2002-06-29 Christopher Faylor + + * environ.cc (spenv::from_cygheap): Still need to take setuid into + consideration. + 2002-06-28 Christopher Faylor * uinfo.cc (cygheap_user::env_logsrv): Return "almost_null" in case @@ -13,7 +18,7 @@ * cygheap.cc (cygheap_user::set_name): Reflect name "pwinname" name change. * environ.cc (getwinenveq): New function. - (spenv::from_cygheap): Change arguments. + (penv::from_cygheap): penv::from_cygheap): Change arguments. (spenv::retrieve): Ditto for call. Use getwinenveq to retrieve info from environment. Always return value from cygwin environment, if it exists. diff --git a/winsup/cygwin/environ.cc b/winsup/cygwin/environ.cc index ae7268fdf..b86b6b8d1 100644 --- a/winsup/cygwin/environ.cc +++ b/winsup/cygwin/environ.cc @@ -817,7 +817,7 @@ spenv::retrieve (bool no_envblock, const char *const envname) if (from_cygheap) { const char *p; - if (envname) + if (envname && !cygheap->user.issetuid ()) { debug_printf ("duping existing value for '%s'", name); return cstrdup1 (envname); /* Don't really care what it's set to -- cgit v1.2.3