* nis/nss_nisplus/nisplus-publickey.c (parse_grp_str): PIDLIST is

supposed to have NGRPS elements.
This commit is contained in:
Ulrich Drepper 2006-04-30 15:36:48 +00:00
parent ac05397075
commit 5493f3ddc3
2 changed files with 9 additions and 2 deletions

View File

@ -1,5 +1,8 @@
2006-04-30 Ulrich Drepper <drepper@redhat.com>
* nis/nss_nisplus/nisplus-publickey.c (parse_grp_str): PIDLIST is
supposed to have NGRPS elements.
* nis/nss_nisplus/nisplus-parser.c: Minor optimizations and
cleanups. Avoid copying data if it can be used in the old place.

View File

@ -226,8 +226,12 @@ parse_grp_str (const char *s, gid_t *gidp, int *gidlenp, gid_t *gidlist,
gidlen = 0;
/* After strtoul() ep should point to the marker ',', which means
here starts a new value. */
while (ep != NULL && *ep == ',')
here starts a new value.
The Sun man pages show that GIDLIST should contain at least NGRPS
elements. Limiting the number written by this value is the best
we can do. */
while (ep != NULL && *ep == ',' && gidlen < NGRPS)
{
ep++;
s = ep;