Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20151025190846.GB8645@brightrain.aerifal.cx>
Date: Sun, 25 Oct 2015 15:08:46 -0400
From: Rich Felker <dalias@...c.org>
To: musl@...ts.openwall.com
Subject: Re: Re: Would love to see reconsideration for domain and
 search

On Sun, Oct 25, 2015 at 02:06:29PM +0100, Jan Broer wrote:
> > The only place adding search support might negatively impact existing
> > musl users is by causing hostnames with no dots to be queried with the
> > (often useless and unwanted) default domain set by dhcp before
> > failing. My preference would probably be having musl default to
> > ndots=0 rather than ndots=1 so that search has to be enabled
> > explicitly. Are there any reasons this would be undesirable?
> 
> 
> I don't think it is a good idea do default to ndots=0. This would
> essentially break search for systems where resolv.conf values are managed
> by the DHCP server. DHCP expects search to work when there is at least one
> entry in the domain-search option returned by the DHCP server. There is no
> DHCP option for configuring ndots (see
> http://linux.die.net/man/5/dhcp-options) and therefore search would not
> work in these configurations when ndots defaults to 0.

What I've found is that almost all dhcp setups include a search
domain, and dhcp clients set it in resolv.conf, but it's rare that the
user actually wants to search this domain. For example do Comcast
(random ISP to pick on) customers actually want random bare (no
domain) queries like "foo" to be tried as "foo.comcast.com"? Almost
surely not.

Of course, as noted before, only bare queries are affected if ndots=1,
so the only behavioral change is that some such queries may
unexpectedly succeed (if they exist in the search domain) or take
longer to fail (since two or more queries have to fail).

> Also, i don't think your argument for setting ndots to 0 by default is
> valid:
> 
> Search always to be enabled explicitly even when the default for ndots=1:
> There is no search unless the user explicitely writes search paths in his
> resolv.conf or configures his DHCP client to get the domain-search option
> via DHCP.
> 
> So the resolvers search functionality is already something the user has to
> enable explicitely.

My experience is that dhcp clients do this by default. Of course
there's a good argument to be made that fixing this should be done at
the dhcp client level (or resolv.conf updating system level) rather
than having libc try to 'fix' it. There's certainly value to having
consistent behavior between programs using different libcs on the same
system, so perhaps sticking with ndots=1 is better.

Rich

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.