changeset 13932:de7851688890

(getuid): Only return root uid if Administrator. (geteuid): Return getuid.
author Geoff Voelker <voelker@cs.washington.edu>
date Thu, 04 Jan 1996 05:01:44 +0000
parents c80fb27c183b
children efd6ce432dc5
files src/w32.c
diffstat 1 files changed, 16 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/w32.c	Thu Jan 04 03:07:38 1996 +0000
+++ b/src/w32.c	Thu Jan 04 05:01:44 1996 +0000
@@ -628,13 +628,27 @@
 int 
 getuid () 
 { 
-  return 0; 
+  char buffer[256];
+  int size = 256;
+
+  if (!GetUserName (buffer, &size))
+    /* Assume all powers upon failure.  */
+    return 0;
+
+  if (!stricmp ("administrator", buffer))
+    return 0;
+  else
+    /* A complete fabrication...is there anything to base it on? */
+    return 123;
 }
 
 int 
 geteuid () 
 { 
-  return 0; 
+  /* I could imagine arguing for checking to see whether the user is
+     in the Administrators group and returning a UID of 0 for that
+     case, but I don't know how wise that would be in the long run.  */
+  return getuid (); 
 }
 
 /* Remove all CR's that are followed by a LF.