ares_gethostbyname(3) - Linux man page
Name
ares_gethostbyname - Initiate a host query by nameSynopsis
#include <ares.h>typedef void (*ares_host_callback)(void *arg, int status,int timeouts, struct hostent *hostent) void ares_gethostbyname(ares_channel channel, const char *name,int family, ares_host_callback callback, void *arg)
Description
The callback argument arg is copied from the ares_gethostbyname 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 find addresses of type family.
- ARES_EBADNAME
- The hostname name is composed entirely of numbers and periods, but is not a valid representation of an Internet address.
- ARES_ENOTFOUND
- The address for name was not found.
- ARES_ENODATA
- The DNS lookup returned no data
- ARES_ENOMEM
- Memory was exhausted.
- ARES_EDESTRUCTION
- The name service channel channel is being destroyed; the query will not be completed.
The callback argument timeouts reports how many times a query timed out during the execution of the given request.
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), ares_gethostbyaddr(3)Author
Greg Hudson, MIT Information SystemsCopyright 1998 by the Massachusetts Institute of Technology.