ARES_EXPAND_NAME(3) Introduction to Library Functions ARES_EXPAND_NAME(3)

NAME


ares_expand_name - Expand a DNS-encoded domain name

SYNOPSIS


#include <ares.h>

int ares_expand_name(const unsigned char *encoded,
const unsigned char *abuf, int alen,
char **s, long *enclen)

DESCRIPTION


The ares_expand_name function converts a DNS-encoded domain name to a
dot-separated C string. The argument encoded gives the beginning of
the encoded domain name, and the arguments abuf and alen give the
containing message buffer (necessary for the processing of
indirection pointers within the encoded domain name). The result is
placed in a NUL-terminated allocated buffer, a pointer to which is
stored in the variable pointed to by s. The length of the encoded
name is stored in the variable pointed to by enclen so that the
caller can advance past the encoded domain name to read further data
in the message.

Use ares_free_string(3) to free the allocated hostname.

RETURN VALUES


ares_expand_name can return any of the following values:

ARES_SUCCESS Expansion of the encoded name succeeded.

ARES_EBADNAME The encoded domain name was malformed and could not be
expanded.

ARES_ENOMEM Memory was exhausted.

SEE ALSO


ares_mkquery(3), ares_free_string(3)

20 Nov 2009 ARES_EXPAND_NAME(3)

tribblix@gmail.com :: GitHub :: Privacy