aboutsummaryrefslogtreecommitdiff
path: root/winsup/cygwin/uinfo.cc
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2002-06-24 15:40:57 +0000
committerCorinna Vinschen <corinna@vinschen.de>2002-06-24 15:40:57 +0000
commit1fd072b6e49bf5e8c1202b7d3233486e1cf82420 (patch)
tree4f357afb4f12fa8fa10914c6d412ef5047efe3e1 /winsup/cygwin/uinfo.cc
parentde0557f7a394b4af6a41478c4208a4eb587964a9 (diff)
downloadnewlib-1fd072b6e49bf5e8c1202b7d3233486e1cf82420.zip
newlib-1fd072b6e49bf5e8c1202b7d3233486e1cf82420.tar.gz
newlib-1fd072b6e49bf5e8c1202b7d3233486e1cf82420.tar.bz2
* uinfo.cc (internal_getlogin): Set myself->uid and myself->gid instead
of user.real_uid and user.real_gid. (uinfo_init): Evaluate orig_uid and real_uid from myself->uid. Ditto for gid.
Diffstat (limited to 'winsup/cygwin/uinfo.cc')
-rw-r--r--winsup/cygwin/uinfo.cc12
1 files changed, 6 insertions, 6 deletions
diff --git a/winsup/cygwin/uinfo.cc b/winsup/cygwin/uinfo.cc
index fe9e30d..e1e9077 100644
--- a/winsup/cygwin/uinfo.cc
+++ b/winsup/cygwin/uinfo.cc
@@ -88,13 +88,13 @@ internal_getlogin (cygheap_user &user)
if (pw)
{
- user.real_uid = pw->pw_uid;
- user.real_gid = pw->pw_gid;
+ myself->uid = pw->pw_uid;
+ myself->gid = pw->pw_gid;
}
else
{
- user.real_uid = DEFAULT_UID;
- user.real_gid = DEFAULT_GID;
+ myself->uid = DEFAULT_UID;
+ myself->gid = DEFAULT_GID;
}
(void) cygheap->user.ontherange (CH_HOME, pw);
@@ -109,8 +109,8 @@ uinfo_init ()
internal_getlogin (cygheap->user); /* Set the cygheap->user. */
/* Real and effective uid/gid are identical on process start up. */
- myself->uid = cygheap->user.orig_uid = cygheap->user.real_uid;
- myself->gid = cygheap->user.orig_gid = cygheap->user.real_gid;
+ cygheap->user.orig_uid = cygheap->user.real_uid = myself->uid;
+ cygheap->user.orig_gid = cygheap->user.real_gid = myself->gid;
cygheap->user.set_orig_sid(); /* Update the original sid */
cygheap->user.token = INVALID_HANDLE_VALUE; /* No token present */