After collecting a bunch of emails from the list, this is the
approach I'll be taking:
1. use the existing nsdispatch code obtained from NetBSD as a base
for parsing the /etc/nsswitch.conf file.
2. Make the C library nsdispatch aware. The dtab[] array will be
filled dynamicaly from the contents of /etc/nsswitch.conf.
I'm still not sure if this has to be done "whithin" the C library
or if nsdispatch should fill the dtab[] array itself and not relay
on the caller (i.e. drop the dtab[] parameter). It seems to me at
this point that the easiest approach is to have nsdispatch fill the
dtab array itself.
3. Move the current implementation of the get*ent and get*by* from the
C library to three dynamically loaded modules, namely: nss_files.so,
nss_nis.so, and nss_dns.so
4. Add more nss_*.so modules for things like LDAP, etc.
once again: comments, suggestions.
Someone mentioned that we should still be able to produce statically linked
binaries for things like /stand and /sbin. I suggest making the nsdispatch
(or get* functions) revert to files if everything else fails (not the
modules themselves, but the loading of the modules). How does this sound?
Regards,
-Oscar
--
For PGP Public Key: finger [EMAIL PROTECTED]
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message