Module Name: src
Committed By: bouyer
Date: Sat Jun 18 17:20:32 UTC 2011
Modified Files:
src/lib/libc/gen [netbsd-5]: getgrent.c
Log Message:
Pull up following revision(s) (requested by sjg in ticket #1636):
lib/libc/gen/getgrent.c: revision 1.63
_gr_copy() can get called with fromgrp->gr_mem == NULL.
To generate a diff of this commit:
cvs rdiff -u -r1.62 -r1.62.6.1 src/lib/libc/gen/getgrent.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/lib/libc/gen/getgrent.c
diff -u src/lib/libc/gen/getgrent.c:1.62 src/lib/libc/gen/getgrent.c:1.62.6.1
--- src/lib/libc/gen/getgrent.c:1.62 Mon Apr 28 20:22:59 2008
+++ src/lib/libc/gen/getgrent.c Sat Jun 18 17:20:31 2011
@@ -1,4 +1,4 @@
-/* $NetBSD: getgrent.c,v 1.62 2008/04/28 20:22:59 martin Exp $ */
+/* $NetBSD: getgrent.c,v 1.62.6.1 2011/06/18 17:20:31 bouyer Exp $ */
/*-
* Copyright (c) 1999-2000, 2004-2005 The NetBSD Foundation, Inc.
@@ -88,7 +88,7 @@
#if 0
static char sccsid[] = "@(#)getgrent.c 8.2 (Berkeley) 3/21/94";
#else
-__RCSID("$NetBSD: getgrent.c,v 1.62 2008/04/28 20:22:59 martin Exp $");
+__RCSID("$NetBSD: getgrent.c,v 1.62.6.1 2011/06/18 17:20:31 bouyer Exp $");
#endif
#endif /* LIBC_SCCS and not lint */
@@ -270,6 +270,9 @@
COPYSTR(grp->gr_passwd, fromgrp->gr_passwd);
grp->gr_gid = fromgrp->gr_gid;
+ if (fromgrp->gr_mem == NULL)
+ return 0;
+
for (memc = 0; fromgrp->gr_mem[memc]; memc++)
continue;
memc++; /* for final NULL */