Section: C Library Functions (3)
Updated: 20 Nov 2009
ares_expand_name - Expand a DNS-encoded domain name
int ares_expand_name(const unsigned char *encoded,
const unsigned char *abuf, int alen, char **s,
function converts a DNS-encoded domain name to a dot-separated C
string. The argument
gives the beginning of the encoded domain name, and the arguments
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
The length of the encoded name is stored in the variable pointed to by
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.
can return any of the following values:
Expansion of the encoded name succeeded.
The encoded domain name was malformed and could not be expanded.
Memory was exhausted.
Greg Hudson, MIT Information Systems
Copyright 1998 by the Massachusetts Institute of Technology.