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.