gethostent(3N) NETWORK FUNCTIONS 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 *hname; /* official name of host */
char **haliases; /* alias list */
int haddrtype; /* address type */
int hlength; /* length of address */
char **haddrlist; /* 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 alter-
nate names for the host.
h_addrtype The type of address being returned;
currently always AFINET.
h_length The length, in bytes, of the
address.
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
Last change: 1
gethostent(3N) NETWORK FUNCTIONS gethostent(3N)
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 AFINET this is inaddr
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 for-
mat is currently understood.
Last change: 2