gethostent(3N-xs) (X/OPEN SOCKETS) gethostent(3N-xs)
NAME
gethostent, gethostbyaddr, gethostbyname, sethostent, endhostent -
network host database functions
SYNOPSIS
cc [flag ...] file ... -lxnet [library ...]
#include <netdb.h>
extern int herrno;
void endhostent(void);
struct hostent *gethostbyaddr(const void *addr, sizet len, int type);
struct hostent *gethostbyname(const char *name);
struct hostent *gethostent(void);
void sethostent(int stayopen);
DESCRIPTION
The gethostent, gethostbyaddr, and gethostbyname 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 gethostent function reads the next entry of the database, opening
a connection to the database if necessary.
The gethostbyaddr function searches the database from the beginning
and finds the first entry for which the address family specified by
type matches the haddrtype member and the address pointed to by addr
occurs in haddrlist, opening a connection to the database if neces-
sary. 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 AFINET, this is an inaddr
structure, defined in <netinet/in.h>.
The gethostbyname function searches the database from the beginning
and finds the first entry for which the host name specified by name
matches the hname member, opening a connection to the database if
necessary.
The sethostent function opens a connection to the network host data-
base, and sets the position of the next entry to the first entry. If
the stayopen argument is non-zero, the connection to the host database
will not be closed after each call to gethostent (either directly, or
indirectly through one of the other gethost* functions).
The endhostent function closes the connection to the database.
Page 1 Reliant UNIX 5.44 Printed 11/98
gethostent(3N-xs) (X/OPEN SOCKETS) gethostent(3N-xs)
RETURN VALUE
On successful completion, gethostbyaddr, gethostbyname and gethostent
return a pointer to a hostent structure if the requested entry was
found, and a null pointer if the end of the database was reached or
the requested entry was not found. Otherwise, a null pointer is
returned.
On unsuccessful completion, gethostbyaddr and gethostbyname functions
set herrno to indicate the error.
ERRORS
No errors are defined for endhostent, gethostent, and sethostent.
The gethostbyaddr and gethostbyname functions will fail in the follow-
ing cases, setting herrno to the value shown in the list below. Any
changes to errno are unspecified.
HOSTNOTFOUND No such host is known.
TRYAGAIN A temporary and possibly transient error occurred,
such as a failure of a server to respond.
NORECOVERY An unexpected server failure occurred which cannot be
recovered.
NODATA The server recognized 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.
APPLICATION USAGE
The gethostent, gethostbyaddr and gethostbyname 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.
SEE ALSO
byteorder(3N-xs), getservent(3N-xs), inet(3N-xs), netdb(5).
Page 2 Reliant UNIX 5.44 Printed 11/98