Subject: Re: nsswitch.conf and irs.conf
To: None <itojun@iijlab.net>
From: Luke Mewburn <lukem@netbsd.org>
List: tech-net
Date: 01/21/2003 13:23:22
On Tue, Jan 21, 2003 at 10:59:11AM +0900, itojun@iijlab.net wrote:
| >Yes, so we need to fix those as well.
| >
| >Replacing getaddrinfo(3) et al with the IRS versions will make it
| >harder for us in support dynamic loading of nsswitch back-ends,
| >and limit us to just using what backends IRS currently implements.
|
| could you tell me why we can't dynamically-load IRS backends?
| it looks to me just a matter of updating acc_names[] and accs[] in
| lib/irs/gen.c, so the same amount [of labor] as dynamically-loadable
| nsswitch backend will make dynamically-loadable IRS backend.
not necessarily. here's how I see it:
* nsswitch:
- nsdispatch(3) needs to be made thread safe
- nsdispatch(3) needs to support loading dynamic "database"
modules (where a "database" is "files", "dns", "nis", etc)
- gethost* (et al) need to be updated to support bind8 resolver
routines for "dns" lookups (and use existing netbsd code
for all other databases)
- single API for end users who want to add extra front-ends
(getfooby*) or database backends (either statically compiled
in, or dynamically loaded)
* irs for gethost*, nsswitch for the rest:
- nsdispatch(3) needs to be made thread safe
- nsdispatch(3) needs to support loading dynamic "database"
modules (where a "database" is "files", "dns", "nis", etc)
- irs needs to support nsswitch.conf
- irs needs to support loading dynamic "database" modules
- multiple APIs for end users who want to add extra front-ends
(getfooby*) or database backends (either statically compiled
in, or dynamically loaded)
using the latter would result in *more* work for end-users wishing to
add extra front- or back-ends (two APIs instead of one to deal with),
and more work for us.
luke.