manpagez: man pages & more
man ares_get_servers_ports(3)
Home | html | info | man
ares_get_servers(3)        Library Functions Manual        ares_get_servers(3)


NAME

       ares_get_servers, ares_get_servers_ports - Retrieve name servers from
       an initialized ares_channel (deprecated)


SYNOPSIS

       #include <ares.h>

       int ares_get_servers(const ares_channel_t *channel,
                            struct ares_addr_node **servers)

       int ares_get_servers_ports(const ares_channel_t *channel,
                                  struct ares_addr_port_node **servers)


DESCRIPTION

       The ares_get_servers(3) function retrieves name servers configuration
       from the channel data identified by channel, as a linked list of
       ares_addr_node structs storing a pointer to the first node at the
       address specified by servers.

       The ares_get_servers_ports(3) function also retrieves any per-server
       port information that may have been previously configured, returning a
       linked list of ares_addr_port structures.

       Function caller may traverse the returned name server linked list, or
       may use it directly as suitable input for the ares_set_servers(3) /
       ares_set_servers_ports(3) functions, but shall not shrink or extend the
       list on its own.

       Each node of the name server linked list is stored in memory
       dynamically allocated and managed by c-ares. It is the caller's
       responsibility to free the resulting linked list, using
       ares_free_data(3) , once the caller does not need it any longer.

       This function is capable of handling IPv4 and IPv6 name server
       addresses simultaneously, rendering ares_save_options(3) with optmask
       ARES_OPT_SERVERS functionally obsolete except for IPv4-only name server
       usage.



RETURN VALUES

       This function may return any of the following values:

       ARES_SUCCESS   The name servers configuration was successfully
                      retrieved

       ARES_ENOMEM    The memory was exhausted

       ARES_ENODATA   The channel data identified by channel was invalid.


SEE ALSO

       ares_set_servers(3), ares_init_options(3), ares_save_options(3)


AVAILABILITY

       ares_get_servers(3) was added in c-ares 1.7.1;
       ares_get_servers_ports(3) was added in c-ares 1.11.0.


NOTES

       As of c-ares 1.24, these functions are deprecated due to their lack of
       ability to store the entire server configuration.  Use
       ares_get_servers_csv(3).

                                 5 March 2010              ares_get_servers(3)

c-ares 1.30.0 - Generated Thu Jun 13 11:04:41 CDT 2024
© manpagez.com 2000-2024
Individual documents may contain additional copyright information.