This is the mail archive of the mailing list for the glibc project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Freeze exception for resolv.conf parser changes

On 06/30/2017 03:45 PM, Florian Weimer wrote:
> I've just posted my resolv.conf changes.  They address two long-standing
> problems with the stub resolver: automatic reloading of struct
> resolv_conf, and the hard search list limit (6 domains).  Both issues
> have seen quite a bit of user interest over the years.
> I think these patches are ready to go in now.  The whole construction is
> a bit baroque, but that's the price we pay for ABI compatibility and
> support for applications which patch _res today.
> But I would like to continue working on this during the first week of
> the freeze.  I see the following five immediate improvements:
> * More test coverage.  (I tested resolv.conf reloading only manually.)
> * Lazy allocation of the main state in resolv/resolv_conf.c, to conserve
>   data segment space for programs which do not use the stub resolver.
> * Eliminate some locking in resolv/resolv_conf.c.
> * Use a free list for indexes into the resolv_conf array (speeds
>   up _res object allocation/resolv_conf attachment).
> * Reimplement the libresolv compat gethostname on top of NSS.
> I think these changes are low risk.
> There are some additional to-do items, but I don't think they need to
> get into the release.
> * Clean up the nssocks array (we do not need it).
> * Support arbitrarily many name servers.
> * Lazily initialize _res on first access.  (Then if *_res is NULL,
>   the application obviously has not patched _res.)
> * Lazily allocate _res (like global-dynamic TLS).  This frees about ~500
>   bytes in the TCB.

I have added this to the release blockers. I think it's gone on for too long
that we don't have reloading /etc/resolv.conf, we get asked about it all the
time and we have promised our users we would tackle this issue.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]