From 64f057143b18b4110b24c745b8aefcc8da518d76 Mon Sep 17 00:00:00 2001 From: Jacques Vidrine Date: Wed, 6 Sep 2000 18:16:48 +0000 Subject: Add nsswitch support. By creating an /etc/nsswitch.conf file, you can configure FreeBSD so that various databases such as passwd and group can be looked up using flat files, NIS, or Hesiod. = Hesiod has been added to libc (see hesiod(3)). = A library routine for parsing nsswitch.conf and invoking callback functions as specified has been added to libc (see nsdispatch(3)). = The following C library functions have been modified to use nsdispatch: . getgrent, getgrnam, getgrgid . getpwent, getpwnam, getpwuid . getusershell . getaddrinfo . gethostbyname, gethostbyname2, gethostbyaddr . getnetbyname, getnetbyaddr . getipnodebyname, getipnodebyaddr, getnodebyname, getnodebyaddr = host.conf has been removed from src/etc. rc.network has been modified to warn that host.conf is no longer used at boot time. In addition, if there is a host.conf but no nsswitch.conf, the latter is created at boot time from the former. Obtained from: NetBSD --- chpass/Makefile | 5 +++-- chpass/chpass.c | 2 +- chpass/edit.c | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) (limited to 'chpass') diff --git a/chpass/Makefile b/chpass/Makefile index 7966608..8b2db0b 100644 --- a/chpass/Makefile +++ b/chpass/Makefile @@ -10,8 +10,9 @@ GENSRCS=yp.h yp_clnt.c yppasswd.h yppasswd_clnt.c yppasswd_private.h \ BINMODE=4555 .PATH: ${.CURDIR}/../../usr.sbin/pwd_mkdb ${.CURDIR}/../../usr.sbin/vipw \ ${.CURDIR}/../../libexec/ypxfr \ - ${.CURDIR}/../../usr.sbin/rpc.yppasswdd -CFLAGS+=-I${.CURDIR}/../../usr.sbin/pwd_mkdb -I${.CURDIR}/../../usr.sbin/vipw + ${.CURDIR}/../../usr.sbin/rpc.yppasswdd \ + ${.CURDIR}/../../lib/libc/gen +CFLAGS+=-I${.CURDIR}/../../usr.sbin/pwd_mkdb -I${.CURDIR}/../../usr.sbin/vipw -I${.CURDIR}/../../lib/libc/gen LINKS= ${BINDIR}/chpass ${BINDIR}/chfn LINKS+= ${BINDIR}/chpass ${BINDIR}/chsh LINKS+= ${BINDIR}/chpass ${BINDIR}/ypchpass diff --git a/chpass/chpass.c b/chpass/chpass.c index 77f9f78..69e700f 100644 --- a/chpass/chpass.c +++ b/chpass/chpass.c @@ -204,7 +204,7 @@ main(argc, argv) if (uid) baduser(); pw = &lpw; - if (!pw_scan(arg, pw)) + if (!__pw_scan(arg, pw, _PWSCAN_WARN|_PWSCAN_MASTER)) exit(1); } username = pw->pw_name; diff --git a/chpass/edit.c b/chpass/edit.c index 6311d57..a5d3d5d 100644 --- a/chpass/edit.c +++ b/chpass/edit.c @@ -264,5 +264,5 @@ bad: (void)fclose(fp); return (0); } free(p); - return (pw_scan(buf, pw)); + return (__pw_scan(buf, pw, _PWSCAN_WARN|_PWSCAN_MASTER)); } -- cgit v1.2.3-56-ge451