changeset 1260:7aff74949325

(parse_user_spec) [__DJGPP__]: Make function know about any arbitrary user and group by pretending to be the user and to belong to the group specified in `spec_arg' argument.
author Jim Meyering <jim@meyering.net>
date Tue, 10 Mar 1998 22:49:04 +0000
parents 735113f2bbf4
children 67cadf165f7f
files lib/userspec.c
diffstat 1 files changed, 9 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/lib/userspec.c
+++ b/lib/userspec.c
@@ -153,6 +153,15 @@
   if (u == NULL && g == NULL)
     return "can not omit both user and group";
 
+#ifdef __DJGPP__
+  /* Pretend that we are the user U whose group is G.  This makes
+     pwd and grp functions ``know'' about the UID and GID of these.  */
+  if (u && !is_number (u))
+    setenv ("USER", u, 1);
+  if (g && !is_number (g))
+    setenv ("GROUP", g, 1);
+#endif
+
   if (u != NULL)
     {
       pwd = getpwnam (u);