www.LinuxHowtos.org





ARES_GET_SERVERS

Section: C Library Functions (3)
Updated: 5 March 2010
Index Return to Main Contents
 

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 pe-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 -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 IPv-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 -ares 1.7.1; ares_get_servers_ports(3) was added in -ares 1.11.0.  

NOTES

As of -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).


 

Index

NAME
SYNOPSIS
DESCRIPTION
RETURN VALUES
SEE ALSO
AVAILABILITY
NOTES