gethostent(3N) gethostent(3N)
NAME
gethostent, gethostbyaddr, gethostbyname, sethostent, endhostent -
get network host entry
SYNOPSIS
#include <sys/types.h>
#include <sys/socket.h>
#include <netdb.h>
struct hostent *gethostent()
struct hostent *gethostbyaddr(addr, len, type)
char *addr;
int len, type;
struct hostent *gethostbyname(name)
char *name;
sethostent(stayopen)
int stayopen
endhostent()
DESCRIPTION
gethostent(), gethostbyaddr(), and gethostbyname() each return a
pointer to an object with the following structure containing the
broken-out fields of a line in the network host data base,
/etc/hosts. In the case of gethostbyaddr(), addr is a pointer to the
binary format address of length len (not a character string).
struct hostent {
char *h_name; /* official name of host */
char **h_aliases; /* alias list */
int h_addrtype; /* address type */
int h_length; /* length of address */
char **h_addr_list; /* list of addresses from name server */
};
The members of this structure are:
h_name Official name of the host.
h_aliases A zero terminated array of alternate names
for the host.
h_addrtype The type of address being returned;
currently always AF_INET.
h_length The length, in bytes, of the address.
8/91 Page 1
gethostent(3N) gethostent(3N)
h_addr_list A pointer to a list of network addresses
for the named host. Host addresses are
returned in network byte order.
gethostent() reads the next line of the file, opening the file if
necessary.
sethostent() opens and rewinds the file. If the stayopen flag is
non-zero, the host data base will not be closed after each call to
gethostent() (either directly, or indirectly through one of the other
gethost calls).
endhostent() closes the file.
gethostbyname() and gethostbyaddr() sequentially search from the
beginning of the file until a matching host name or host address is
found, or until an EOF is encountered. Host addresses are supplied
in network order.
gethostbyaddr() takes a pointer to an address structure. This
structure is unique to each type of address. For addres of type
AF_INET this is in_addr structure. See <netinet/in.h>.
FILES
/etc/hosts
SEE ALSO
hosts(4)
DIAGNOSTICS
A NULL pointer is returned on an EOF or error.
BUGS
All information is contained in a static area so it must be copied if
it is to be saved. Only the Internet address format is currently
understood.
Page 2 8/91