From 96bda0ea44eb94e0284e91f20ba9733ae63f26a5 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Tue, 2 Jul 1996 19:35:40 +0000 Subject: * nss/nss_files/files-network.c: Pass empty for new DB_LOOKUP args. (DATABASE): Define this instead of DATAFILE. * nss/nss_files/files-hosts.c: Likewise. (hostbyname): Use LOOKUP_NAME macro. * nss/nss_db/db-XXX.c: New file. * nss/Makefile (services): Add db. (libnss_db-inhibit-o): New variable. (libnss_db-routines): New variable. (distribute): Append db-XXX.c. (libnss_db.so): Depend on libdb.so and libnss_files.so. ($(libnss_db-routines:%=$(objpfx)%.c)): New static pattern rule. * nss/nss_files/files-XXX.c (DB_LOOKUP): Add KEYSIZE and KEYPATTERN args, ignored. (DATAFILE): New macro. * nss/nss_files/files-parse.c (GENERIC): If undefined, define to "files-XXX.c". * nss/nss_files/files-rpc.c: Include GENERIC instead of "files-XXX.c". Pass db key args to DB_LOOKUP. (DATAFILE): Macro removed. (DATABASE): New macro replaces it, lacks "/etc/" prefix. * nss/nss_files/files-service.c: Likewise. * nss/nss_files/files-pwd.c: Likewise. * nss/nss_files/files-proto.c: Likewise. * nss/nss_files/files-grp.c: Likewise. * nss/nss_files/files-ethers.c: Likewise. * elf/linux-compat.c: File removed. * elf/Makefile (distribute): Remove linux-compat.c. (ld-linux.so.1): Remove target and associated variables. * sunrpc/xdr.c: Remove malloc decl. * sunrpc/portmap.c: Likewise. * sunrpc/svc_tcp.c (abort): Don't declare. Instead define as macro casting abort to fn returning bool_t. * nss/nss_files/files-parse.c [EXTERN_PARSER]: Do an extern decl of the parser function. [EXTERN_PARSER] (LINE_PARSER): Define to empty. * nss/nss_files/files-pwd.c (EXTERN_PARSER): Define it. * nss/nss_files/files-grp.c: Likewise. * Makeconfig (BUILD_CC): If undefined, define to $(CC). * sunrpc/rpc/types.h: Include stdlib.h instead of declaring malloc. * Makeconfig (built-program-cmd): Use $(rtld-installed-name) in place of ld.so so lookups for that soname find it. * nss/Makefile (libnss_dns.so): Depend on libresolv.so. (resobjdir, LDLIBS-nss_dns.so): Variables removed. --- nss/nss_files/files-grp.c | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) (limited to 'nss/nss_files/files-grp.c') diff --git a/nss/nss_files/files-grp.c b/nss/nss_files/files-grp.c index 580dfbe3eb..8e047b6475 100644 --- a/nss/nss_files/files-grp.c +++ b/nss/nss_files/files-grp.c @@ -21,26 +21,22 @@ Cambridge, MA 02139, USA. */ #define STRUCTURE group #define ENTNAME grent -#define DATAFILE "/etc/group" +#define DATABASE "group" struct grent_data {}; -#define TRAILING_LIST_MEMBER gr_mem -#define TRAILING_LIST_SEPARATOR_P(c) ((c) == ',') -#include "files-parse.c" /* Our parser function is already defined in fgetgrent.c, so use that. to parse lines from the database file. */ -extern int parse_line (char *line, struct STRUCTURE *result, - void *buffer, int buflen); - -#include "files-XXX.c" +#define EXTERN_PARSER +#include "files-parse.c" +#include GENERIC -DB_LOOKUP (grnam, +DB_LOOKUP (grnam, 1 + strlen (name), (".%s", name), { if (! strcmp (name, result->gr_name)) break; }, const char *name) -DB_LOOKUP (grgid, +DB_LOOKUP (grgid, 20, ("=%lu", (unsigned long int) gid), { if (result->gr_gid == gid) break; -- cgit 1.4.1