Man Linux: Main Page and Category List

NAME

       ares_gethostbyaddr - Initiate a host query by address

SYNOPSIS

       #include <ares.h>

       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 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 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 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 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 hostent; the ares library will free it when the
       callback returns.  If the query did not complete successfully,  hostent
       will be NULL.

SEE ALSO

       ares_process(3)

AUTHOR

       Greg Hudson, MIT Information Systems
       Copyright 1998 by the Massachusetts Institute of Technology.

                                 24 July 1998