From: Geoff Voelker Date: Thu, 4 Jan 1996 05:01:44 +0000 (+0000) Subject: (getuid): Only return root uid if Administrator. X-Git-Tag: emacs-19.34~1928 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=03e123e7383ccd70f910a8176e11e965bf6860d4;p=emacs.git (getuid): Only return root uid if Administrator. (geteuid): Return getuid. --- diff --git a/src/w32.c b/src/w32.c index ae7f299dd03..486c7080d66 100644 --- a/src/w32.c +++ b/src/w32.c @@ -628,13 +628,27 @@ request_sigio (void) 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.