Subject: Re: BIND 8.3.5
To: None <tech-net@NetBSD.ORG>
From: Luke Mewburn <lukem@netbsd.org>
List: tech-net
Date: 06/03/2003 18:21:08
On Tue, Jun 03, 2003 at 05:07:09PM +0900, itojun@iijlab.net wrote:
| >Just replacing the internals of our BIND4 res_*() with BIND8
| >res_*(), assuming that retains API/ABI backwards compat for
| >callers of those, shouldn't be a problem, should it?
| >
| >
| >Wholesale replacement of our get*by*() front-end functions
| >with the BIND8/9 versions which use IRS instead of our
| >nsswitch API (and ABI) in the back-end is not acceptable.
|
| without wholesale replacement you won't get thread-safe name/service/
| whatever resolution. there's no point in replacing res_* alone.
This doesn't make sense.
What is wrong with:
a) upgrading res_*() to BIND8 "reentrant safe" versions
b) grabbing the appropriate get{pw,gr}*_r() functions and
nsswitch reentrancy fixes from FreeBSD
?
What is so special about BIND8's get*by*() functions over ours?
AFAICT, nothing. According to SUSv3, gethostbyname() (et al) don't
have to be reentrant.
| >IIRC; the main reason I've seen for the latter proposal is
| >to provide thread safety, which BTW, is *NOT* required for
| >gethostbyname() et al, only gethostbyname_r() and other specific
| >thread-safe functions.
|
| but they use the same backend such as *hostent(), therefore we need to
| pull in irs framework, or it's meaningless.
See above.