NAME

zkGethostbyaddr, zkGethostbyname, zkHErrno - network host database functions

SYNOPSIS

#include "zkNetdb.h"

struct hostent* zkGethostbyaddr(const void* addr, size_t len, int type);

struct hostent* zkGethostbyname(const char* name);

int zkHErrno(void);

DESCRIPTION

The zkGethostbyaddr(), and zkGethostbyname() functions each return a pointer to a hostent structure, the members of which contain the fields of an entry in the network host database.

The zkGethostbyaddr() function searches the database and finds an entry which matches the address family specified by the type argument and which matches the address pointed to by the addr argument, opening a connection to the database if necessary. The addr argument is a pointer to the binary-format (that is, not null-terminated) address in network byte order, whose length is specified by the len argument. The datatype of the address depends on the address family. For an address of type AF_INET, this is an in_addr structure, defined in "zkNetinetIn.h"

The zkHErrno() function returns the last error that occured in a call to zkGethostbyaddr() or zkGethostbyname(), if any.

RETURN VALUE

On successful completion, zkGethostbyaddr() and zkGethostbyname() return a pointer to a hostent structure if the requested entry was found, and NULL if the end of the database was reached or the requested entry was not found.

On unsuccessful completion, zkGethostbyaddr() and zkGethostbyname() functions set a global error code which may be retrieved with the zkHErrno() function.

ERRORS

The zkGethostbyaddr() and zkGethostbyname() functions will fail in the following cases, setting a global error code (retrievable with zkHErrno()) to the value shown in the list below. Any changes to errno are unspecified.

[HOST_NOT_FOUND]
No such host is known.
[NO_DATA]
The server recognised the request and the name but no address is available. Another type of request to the name server for the domain might return an answer.
[NO_RECOVERY]
An unexpected server failure occurred which can not be recovered.
[TRY_AGAIN]
A temporary and possibly transient error occurred, such as a failure of a server to respond.

APPLICATION USAGE

The zkGethostbyaddr() and zkGethostbyname() functions may return pointers to static data, which may be overwritten by subsequent calls to any of these functions.

These functions are generally used with the Internet address family.