about summary refs log tree commit diff
path: root/inet/getnetgrent_r.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@gmail.com>2011-07-06 11:38:42 -0400
committerUlrich Drepper <drepper@gmail.com>2011-07-06 11:38:42 -0400
commit960e5535b08ea358caefe8eb831aae36cc4826c5 (patch)
tree9cd581c14fa309c9770716da7b52b0a0b3981ddb /inet/getnetgrent_r.c
parent5d4cf042506c290f6f6c62d95ce2ebb56c854a7a (diff)
downloadglibc-960e5535b08ea358caefe8eb831aae36cc4826c5.tar.gz
glibc-960e5535b08ea358caefe8eb831aae36cc4826c5.tar.xz
glibc-960e5535b08ea358caefe8eb831aae36cc4826c5.zip
Add the extra check also in innetgr
Diffstat (limited to 'inet/getnetgrent_r.c')
-rw-r--r--inet/getnetgrent_r.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/inet/getnetgrent_r.c b/inet/getnetgrent_r.c
index b588897df1..91cdcce468 100644
--- a/inet/getnetgrent_r.c
+++ b/inet/getnetgrent_r.c
@@ -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)
 			{