GETHOSTENT(3N)
NAME
gethostent, gethostbyaddr, gethostbyname, sethostent, endhostent − get network host entry
USAGE
#include <netdb.h>
struct hostent *gethostent()
struct hostent *gethostbyname(name)
char *name;
struct hostent *gethostbyaddr(addr, len, type)
char *addr; int len, type;
sethostent(stayopen)
int stayopen
endhostent()
DESCRIPTION
Gethostent, gethostbyname, and gethostbyaddr all return a pointer to an object with the following structure. The structure contains the separated fields of a line in the network host database, /etc/hosts.
structhostent {
char*h_name;/* official name of host */
char**h_aliases;/* alias list */
inth_addrtype;/* address type */
inth_length;/* length of address */
char*h_addr;/* address */
};
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.
h_addr A pointer to the network address for the 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 database 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 EOF is encountered. Host addresses are supplied in network order.
NOTES
All information is kept in a static area, so it must be copied if you wish to save it. These functions only understand the Internet address format.
FILES
/etc/hosts
DIAGNOSTICS
Null pointer (zero) returned on EOF or error.