Subject: CVS commit: src
To: None <source-changes@NetBSD.org>
From: Luke Mewburn <lukem@netbsd.org>
List: source-changes
Date: 10/04/2004 04:11:34
Module Name:	src
Committed By:	lukem
Date:		Mon Oct  4 04:11:34 UTC 2004

Modified Files:
	src/include: grp.h
	src/lib/libc/gen: getgrent.3 getgrent.c
	src/lib/libc/include: namespace.h

Log Message:
Overhaul the use of nsdispatch(3) by public APIs so that the back-end
methods use va_list in a manner that is directly related to the public API.
This makes it much easier to write dynamic nsswitch backends for getgrent(3).
Per my proposal on tech-userlevel.

Implement getgrgid_r() and getgrnam_r() APIs per the POSIX 1003.1, 2004 Ed.
These aren't fully reentrant or threadsafe yet, because the compat stuff
currently uses non-reentrant data sources (getnetgrent(3), getgrent(3)),
and there is probably some locking to be improved in the backends.
This will be fixed in the near future.
We also need to add _SC_GETGR_R_SIZE_MAX to sysconf(3).


To generate a diff of this commit:
cvs rdiff -r1.18 -r1.19 src/include/grp.h
cvs rdiff -r1.20 -r1.21 src/lib/libc/gen/getgrent.3
cvs rdiff -r1.48 -r1.49 src/lib/libc/gen/getgrent.c
cvs rdiff -r1.92 -r1.93 src/lib/libc/include/namespace.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.