Add the extra check also in innetgr
authorUlrich Drepper <drepper@gmail.com>
Wed, 6 Jul 2011 15:38:42 +0000 (11:38 -0400)
committerUlrich Drepper <drepper@gmail.com>
Wed, 6 Jul 2011 15:38:42 +0000 (11:38 -0400)
ChangeLog
inet/getnetgrent_r.c

index 9b2915e..38149a6 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,7 @@
 
        * inet/getnetgrent_r.c (internal_getnetgrent_r): Fix check for known
        netgroups to read.
+       (innetgr): Likewise.
 
 2011-07-05  Roland McGrath  <roland@hack.frob.com>
 
index b588897..91cdcce 100644 (file)
@@ -389,6 +389,11 @@ innetgr (const char *netgroup, const char *host, const char *user,
                           namep = namep->next)
                        if (strcmp (entry.val.group, namep->name) == 0)
                          break;
+                     if (namep == NULL)
+                       for (namep = entry.needed_groups; namep != NULL;
+                            namep = namep->next)
+                         if (strcmp (entry.val.group, namep->name) == 0)
+                           break;
                      if (namep == NULL
                          && strcmp (netgroup, entry.val.group) != 0)
                        {