Scroll to navigation

ARES_INIT(3) Library Functions Manual ARES_INIT(3)

NAME

ares_init - Initialize a resolver channel

SYNOPSIS

#include <ares.h>
int ares_init(ares_channel *channelptr)

DESCRIPTION

The ares_init(3) function initializes a communications channel for name service lookups. If it returns successfully, ares_init(3) will set the variable pointed to by channelptr to a handle used to identify the name service channel. The caller should invoke ares_destroy(3) on the handle when the channel is no longer needed.

The ares_init_options(3) function is provide to offer more init alternatives.

RETURN VALUES

ares_init(3) can return any of the following values:
ARES_SUCCESS
Initialization succeeded.
ARES_EFILE
A configuration file could not be read.
ARES_ENOMEM
The process's available memory was exhausted.
ARES_ENOTINITIALIZED
c-ares library initialization not yet performed.

NOTES

When initializing from /etc/resolv.conf, ares_init(3) reads the domain and search directives to allow lookups of short names relative to the domains specified. The domain and search directives override one another. If more that one instance of either domain or search directives is specified, the last occurrence wins. For more information, please see the resolv.conf(5) manual page.

SEE ALSO

ares_init_options(3), ares_destroy(3), ares_dup(3), ares_library_init(3), ares_set_servers(3)

AUTHOR

Greg Hudson, MIT Information Systems
Copyright 1998 by the Massachusetts Institute of Technology.
Copyright (C) 2004-2010 by Daniel Stenberg.
5 March 2010