[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH] 'id' prints incorrectly groups for the session
From: |
Petr Stodůlka |
Subject: |
[PATCH] 'id' prints incorrectly groups for the session |
Date: |
Wed, 25 Jun 2014 14:17:31 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.5.0 |
Hi,
command 'id' prints wrong groups for the session. This is similar to
reported bug #7320 [0],
which was patched earlier for 'groups' and 'id -G', however just 'id'
still prints wrong groups.
I propose this patch based on previous solution:
----------------------------------------------------------------------
diff --git a/src/id.c b/src/id.c
index 3348f80..6cfe884 100644
--- a/src/id.c
+++ b/src/id.c
@@ -399,8 +399,12 @@ print_full_info (const char *username)
gid_t *groups;
int i;
- int n_groups = xgetgroups (username, (pwd ? pwd->pw_gid : -1),
- &groups);
+ int n_groups;
+ if(username)
+ n_groups = xgetgroups (username, (pwd ? pwd->pw_gid : -1),
+ &groups);
+ else
+ n_groups = xgetgroups (username, egid, &groups);
if (n_groups < 0)
{
if (username)
--------------------------------------------------------------------
[0] http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7320