Subject: Re: re-reading /etc/resolv.conf on change
To: NetBSD Userlevel Technical Discussion List <tech-userlevel@NetBSD.ORG>
From: Jason Thorpe <>
List: tech-userlevel
Date: 01/06/2004 14:59:53
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=US-ASCII; format=flowed

On Jan 6, 2004, at 2:45 PM, Greg A. Woods wrote:

> [Think of it the other way around:  _PATH_RESCONF is defined by the
> system in the compile-time environment, not by the resolver(3)
> routines.  I.e. there's nothing "internal" being exposed at all.

I then challenge you to look it at another way.  Just because something 
is defined in a system header file does not mean it is for consumption 
by random external users of a given API.  (The macro in question is out 
of the user namespace, after all...)

Applications and library routines outside the core resolver code 
currently have no reason to care of the existence of the resolv.conf 
file, whether or not the _PATH_RESCONF macro is defined by a system 
header file.  All interaction with that file is completely transparent 
to the application and other library routines.

_PATH_KSYMS is defined by a system header file, too.  Does that mean 
that all applications that use kvm_*() should be changed to reference 
_PATH_KSYMS to get information about kernel symbols?

Finally, also consider that some software that is based on NetBSD might 
use alternate configuration mechanisms (configuration files are 
sometimes hokey in embedded systems).  Right now resolv.conf handling 
is nicely contained in one place, which makes it easy to glue in 
alternate configuration mechanisms.  If you suddenly sprinkle 
resolv.conf handling all over the place, you've now made it more 
difficult for users of the NetBSD code base to glue in alternate 
configuration schemes.

         -- Jason R. Thorpe <>

content-type: application/pgp-signature; x-mac-type=70674453;
content-description: This is a digitally signed message part
content-disposition: inline; filename=PGP.sig
content-transfer-encoding: 7bit

Version: GnuPG v1.2.3 (Darwin)