mailing list of musl libc
 help / color / mirror / code / Atom feed
* Resolver overhaul: first phase pushed
@ 2014-06-01  2:37 Rich Felker
  0 siblings, 0 replies; only message in thread
From: Rich Felker @ 2014-06-01  2:37 UTC (permalink / raw)
  To: musl

From the commit message (6f409bff008a83fa6bc640c10366765874de35e2):

    refactor getaddrinfo and add support for most remaining features
    
    this is the first phase of the "resolver overhaul" project.
    
    conceptually, the results of getaddrinfo are a direct product of a
    list of address results and a list of service results. the new code
    makes this explicit by computing these lists separately and combining
    the results. this adds support for services that have both tcp and udp
    versions, where the caller has not specified which it wants, and
    eliminates a number of duplicate code paths which were all producing
    the final output addrinfo structures, but in subtly different ways,
    making it difficult to implement any of the features which were
    missing.
    
    in addition to the above benefits, the refactoring allows for legacy
    functions like gethostbyname to be implemented without using the
    getaddrinfo function itself. such changes to the legacy functions have
    not yet been made, however.
    
    further improvements include matching of service alias names from
    /etc/services (previously only the primary name was supported),
    returning multiple results from /etc/hosts (previously only the first
    matching line was honored), and support for the AI_V4MAPPED and AI_ALL
    flags.
    
    features which remain unimplemented are IDN translations (encoding
    non-ASCII hostnames for DNS lookup) and the AI_ADDRCONFIG flag.

    at this point, the DNS-based name resolving code is still based on the
    old interfaces in __dns.c, albeit somewhat simpler in its use of them.
    there may be some dead code which could already be removed, but
    changes to this layer will be a later phase of the resolver overhaul.

Please report any regressions.

Rich


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2014-06-01  2:37 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-06-01  2:37 Resolver overhaul: first phase pushed Rich Felker

Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).