Copyright 1998 by the Massachusetts Institute of Technology.
Permission to use, copy, modify, and distribute this
software and its documentation for any purpose and without
fee is hereby granted, provided that the above copyright
notice appear in all copies and that both that copyright
notice and this permission notice appear in supporting
documentation, and that the name of M.I.T. not be used in
advertising or publicity pertaining to distribution of the
software without specific, written prior permission.
M.I.T. makes no representations about the suitability of
this software for any purpose. It is provided "as is"
without express or implied warranty.
ARES_EXPAND_NAME 3 "20 Nov 2009"
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:
15 ARES_SUCCESS Expansion of the encoded name succeeded.
15 ARES_EBADNAME The encoded domain name was malformed and could not be expanded.
15 ARES_ENOMEM Memory was exhausted.
SEE ALSO
ares_mkquery (3), ares_free_string (3) AUTHOR
Greg Hudson, MIT Information Systems
Copyright 1998 by the Massachusetts Institute of Technology.