aboutsummaryrefslogtreecommitdiff
path: root/lib/libc/gen/getnetgrent.c
diff options
context:
space:
mode:
authorBill Paul <wpaul@FreeBSD.org>1995-03-19 22:19:52 +0000
committerBill Paul <wpaul@FreeBSD.org>1995-03-19 22:19:52 +0000
commite80307946b828762d364ce0a2dc1d04e56c16217 (patch)
treec0ac10fd83acc9828ccb3df95d92bfc9babe7845 /lib/libc/gen/getnetgrent.c
parentc0585ea944323a9405b119525b97c39f9cc2c984 (diff)
downloadsrc-e80307946b828762d364ce0a2dc1d04e56c16217.tar.gz
src-e80307946b828762d364ce0a2dc1d04e56c16217.zip
Whoops: expanding netgroups that reference multiple netgroups doesn't
work because parse_netgrp() doesn't recurse properly. Fixed by changing if (parse_netgrp(spos)) return(1); to if (parse_netgrp(spos)) continue; inside parse_netgrp(). (Lucky for me I happen to have a fairly complex 'live' netgroup database to test this stuff with.)
Notes
Notes: svn path=/head/; revision=7175
Diffstat (limited to 'lib/libc/gen/getnetgrent.c')
-rw-r--r--lib/libc/gen/getnetgrent.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/libc/gen/getnetgrent.c b/lib/libc/gen/getnetgrent.c
index df2164ed9255..e634eb71f63e 100644
--- a/lib/libc/gen/getnetgrent.c
+++ b/lib/libc/gen/getnetgrent.c
@@ -258,7 +258,7 @@ parse_netgrp(group)
} else {
spos = strsep(&pos, ", \t");
if (parse_netgrp(spos))
- return (1);
+ continue;
}
/* Watch for null pointer dereferences, dammit! */
if (pos != NULL)