NAME
ares_gethostbyaddr - Initiate a host query by address
SYNOPSIS
typedef void (*ares_host_callback)(void *arg, int status,
struct hostent *hostent)
void ares_gethostbyaddr(ares_channel channel, const void *addr,
int addrlen, int family, ares_host_callback callback,
void *arg)
DESCRIPTION
The
ares_gethostbyaddr
function initiates a host query by address on the name service channel
identified by
R channel .
The parameters
addr
and
addrlen
give the address as a series of bytes, and
family
gives the type of address. When the query is complete or has failed,
the ares library will invoke
R callback .
Completion or failure of the query may happen immediately, or may
happen during a later call to
ares_process(3)
or
ares_destroy(3).
The callback argument
arg
is copied from the
ares_gethostbyaddr
argument
R arg .
The callback argument
status
indicates whether the query succeeded and, if not, how it failed. It
may have any of the following values:
ARES_SUCCESS
The host lookup completed successfully.
ARES_ENOTIMP
The ares library does not know how to look up addresses of type
R family .
ARES_ENOTFOUND
The address
addr
was not found.
ARES_ENOMEM
Memory was exhausted.
ARES_EDESTRUCTION
The name service channel
channel
is being destroyed; the query will not be completed.
On successful completion of the query, the callback argument
hostent
points to a
struct hostent
containing the name of the host returned by the query. The callback
need not and should not attempt to free the memory pointed to by
R hostent ;
the ares library will free it when the callback returns. If the query
did not complete successfully,
hostent
will be
R NULL .
SEE ALSO
AUTHOR
Greg Hudson, MIT Information Systems
Copyright 1998 by the Massachusetts Institute of Technology.