OSDN Git Service

* uinfo.cc (internal_getlogin): Set myself->uid and myself->gid instead
authorcorinna <corinna>
Mon, 24 Jun 2002 15:40:56 +0000 (15:40 +0000)
committercorinna <corinna>
Mon, 24 Jun 2002 15:40:56 +0000 (15:40 +0000)
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
winsup/cygwin/uinfo.cc

index b44351f..6ff5adf 100644 (file)
@@ -1,3 +1,10 @@
+2002-06-24  Corinna Vinschen  <corinna@vinschen.de>
+
+       * 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 <pierre.humblet@ieee.org>
 
        * security.cc (get_group_sidlist): Add pw argument and use pw->pw_name
index fe9e30d..e1e9077 100644 (file)
@@ -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 */