Comtrol eCos User Manual
Page 553

Chapter 38. TCP/IP Library Reference
to single-component names (those that do not contain a
dot).
This option is enabled by default.
RES_DNSRCH
If this option is set, res_search() will search for host
names in the current domain and in parent domains; see
hostname(7).
This is used by the standard host lookup
routine gethostbyname(3).
This option is enabled by
default.
RES_USE_INET6
Enables support for IPv6-only applications.
This causes
IPv4 addresses to be returned as an IPv4 mapped address.
For example, 10.1.1.1 will be returned as ::ffff:10.1.1.1.
The option is not meaningful on OpenBSD.
The res_init() routine reads the configuration file (if any; see
resolv.conf(5)) to get the default domain name, search list, and the
Internet address of the local name server(s).
If no server is config-
ured, the host running the resolver is tried.
The current domain name is
defined by the hostname if not specified in the configuration file; it
can be overridden by the environment variable LOCALDOMAIN.
This environ-
ment variable may contain several blank-separated tokens if you wish to
override the search list on a per-process basis.
This is similar to the
search command in the configuration file.
Another environment variable
RES_OPTIONS can be set to override certain internal resolver options
which are otherwise set by changing fields in the _res structure or are
inherited from the configuration file’s options command.
The syntax of
the RES_OPTIONS environment variable is explained in resolv.conf(5).
Initialization normally occurs on the first call to one of the following
routines.
The res_query() function provides an interface to the server query mecha-
nism.
It constructs a query, sends it to the local server, awaits a
response, and makes preliminary checks on the reply.
The query requests
information of the specified type and class for the specified fully qual-
ified domain name dname.
The reply message is left in the answer buffer
with length anslen supplied by the caller.
The res_search() routine makes a query and awaits a response like
res_query(), but in addition, it implements the default and search rules
controlled by the RES_DEFNAMES and RES_DNSRCH options.
It returns the
first successful reply.
The remaining routines are lower-level routines used by res_query().
The
res_mkquery() function constructs a standard query message and places it
in buf.
It returns the size of the query, or -1 if the query is larger
than buflen.
The query type op is usually QUERY, but can be any of the
query types defined in
<
arpa/nameser.h>.
The domain name for the query
is given by dname.
newrr is currently unused but is intended for making
update messages.
The res_send() routine sends a pre-formatted query and returns an answer.
It will call res_init() if RES_INIT is not set, send the query to the
local name server, and handle timeouts and retries.
The length of the
reply message is returned, or -1 if there were errors.
449