Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Next »

Converts the string representation of a host name to its corresponding IP address using DNS service.

Files

dns-c.h/dns-c.c

Prototype

Arguments

p_host_namePointer to a string that contains the host name.
p_res_host_name

Pointer to a string that will receive the host name resulting from a reverse lookup OR the canonical name resulting from a forward lookup with the DNSc_FLAG_CANON set.
This argument should be left DEF_NULL if a simple forward DNS request is desired.

res_hostname_len

String length of p_res_host_name. This argument should evaluate to 0 if a simple forward DNS request is desired (with DNSc_FLAG_CANON cleared).

p_addrsPointer to arrays that will receive the IP address(es) from this function.
p_addr_nbr

Pointer to a variable that:

(1) Indicates how many addresses can fit into the addresses array pointed by the 'p_addrs' argument. If the caller desires a reverse lookup, the variable should evaluate to 1.

and

(2) Will receive the number of address(es) copied into the addresses array.

flags

DNS client flag:

DNSc_FLAG_NONE - By default this function is blocking.
DNSc_FLAG_NO_BLOCK - Don't block (only possible if DNSc's task is enabled).
DNSc_FLAG_FORCE_CACHE - Take host from the cache, don't send new DNS request.
DNSc_FLAG_FORCE_RENEW - Force DNS request, remove existing entry in the cache.
DNSc_FLAG_FORCE_RESOLUTION - Force DNS to resolve given host name.
DNSc_FLAG_IPv4_ONLY - Return only IPv4 address(es) (A type).
DNSc_FLAG_IPv6_ONLY - Return only IPv6 address(es) (AAAA type).
DNSc_FLAG_REVERSE_LOOKUP - Issue a reverse DNS lookup for an IP address (PTR type).
DNSc_FLAG_CANON - Process canonical name if present in DNS answers.

p_cfg

Must be set to DEF_NULL to use default configuration.

Pointer to a request configuration. Should be set to overwrite default DNS configuration (such as DNS server, request timeout, etc.).

p_errPointer to variable that will receive the return error code from this function.

Returned Values

Resolution status:

DNSc_STATUS_PENDING  Host resolution is pending, call again to see the status. (Processed by DNSc's task)
DNSc_STATUS_RESOLVED Host is resolved.
DNSc_STATUS_FAILED Host resolution has failed.

Required Configuration

None.

Notes / Warnings

(1) The DNSc_FLAG_REVERSE_LOOKUP flag must be used in conjunction with the DNSc_FLAG_FORCE_RESOLUTION flag. 

(2) If this function successfully resolves a reverse lookup, the host's information is added to the cache just as it would be for a forward lookup.

Example Usage

See Sample Application.

  • No labels