From e3aec8aa8351378cd478964f3d84c64e42f16963 Mon Sep 17 00:00:00 2001 From: corinna Date: Mon, 24 Jun 2002 15:40:56 +0000 Subject: [PATCH] * 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. --- winsup/cygwin/ChangeLog | 7 +++++++ winsup/cygwin/uinfo.cc | 12 ++++++------ 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index b44351f0c1..6ff5adfdaf 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,10 @@ +2002-06-24 Corinna Vinschen + + * 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. + 2002-06-23 Pierre Humblet * security.cc (get_group_sidlist): Add pw argument and use pw->pw_name diff --git a/winsup/cygwin/uinfo.cc b/winsup/cygwin/uinfo.cc index fe9e30db7b..e1e9077299 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 */ -- 2.11.0