Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 3 Aug 1999 23:19:53 +0700 (ALMST)
From:      Boris Popov <bp@butya.kz>
To:        Oscar Bonilla <obonilla@fisicc-ufm.edu>
Cc:        freebsd-hackers@FreeBSD.ORG
Subject:   Re: NSS Project
Message-ID:  <Pine.BSF.4.10.9908032306130.47399-100000@lion.butya.kz>
In-Reply-To: <19990803095333.A14120@fisicc-ufm.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 3 Aug 1999, Oscar Bonilla wrote:

> 
> Following on the NSS (Name Service Switch):
> 
> *Step One:  I ported the NetBSD implementation of nsdispatch(3) as implemented 
> by Luke Mewburn. See attached patch to libc and new header file. I'm also
> attaching the man page for /etc/nsswitch.conf. Right now it compiles,
> installs, and works for some simple tests I've run.

	Great. I haven't alnalyse all of the code but this thing looks
a little bit limited:

> /* Basically we reduce getpwent to a simple nsdispatch call */
> 
> struct passwd *
> getpwent()
> {
> 	int r;
> 	static const ns_dtab dtab[] = {
> 		NS_FILES_CB(_local_getpw, NULL)
> 		NS_DNS_CB(_dns_getpw, NULL)
> 		NS_NIS_CB(_nis_getpw, NULL)
> 		NS_COMPAT_CB(_compat_getpwent, NULL)
> 		{ 0 }
> 	};

	May be I'm totally wrong, but dtab[] array can be constructed (or
extended) dynamically, based on configuration file and _*_getpw()
functions can be placed in shared libraries (just like PAM modules). In
this case it is possible to extend NSS space without disturbing libc code.

--
Boris Popov
http://www.butya.kz/~bp/



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.10.9908032306130.47399-100000>