 |
Index for Section 3 |
|
 |
Alphabetical listing for G |
|
gethostbyaddr(3)
NAME
gethostbyaddr, gethostbyaddr_r - Gets a network host entry by address
LIBRARY
Standard C Library (libc.so, libc.a)
SYNOPSIS
#include <netdb.h>
struct hostent *gethostbyaddr(
const void *addr,
size_t len,
int type) ;
[DIGITAL] The following obsolete function is supported in order to
maintain backward compatibility with previous versions of the operating
system. You should not use it in new designs.
int *gethostbyaddr_r(
const char *addr,
int len,
int type,
struct hostent *hptr,
struct hostent_data *hdptr);
[DIGITAL] The following definition of the gethostbyaddr() function does
not conform to current standards and is supported only for backward
compatibility (see standards(5)):
struct hostent *gethostbyaddr(
const char *addr,
int len,
int type) ;
STANDARDS
Interfaces documented on this reference page conform to industry standards
as follows:
gethostbyaddr(): XNS4.0
Refer to the standards(5) reference page for more information about
industry standards and associated tags.
PARAMETERS
addr Specifies an Internet address in network order.
len Specifies the number of bytes in an Internet address.
type Specifies the Internet domain address format. The value AF_INET
must be used.
hdptr [DIGITAL] Is data for the host database. The netdb.h header
file defines the hostent_data structure.
hptr [DIGITAL] Points to the hostent structure. The netdb.h header
file defines the hostent structure.
DESCRIPTION
The gethostbyname() function returns a pointer to a structure of type
hostent. Its members specify data obtained from either the local
/etc/hosts file or one of the files distributed by BIND or NIS. To
determine which file or files to search, and in which order, the system
uses the switches in the /etc/svc.conf file. The netdb.h header file
defines the hostent structure.
The gethostbyaddr() function searches the network host database
sequentially until a match with the addr and type parameters occurs. The
len parameter must specify the number of bytes in an Internet address. The
address parameter must specify the address in network order. The type
parameter must be the constant AF_INET, which specifies the Internet
address format. When EOF (End-of-File) is reached without a match, an error
value is returned.
If using BIND, the information is obtained from a name server specified in
the /etc/resolv.conf file. When the name server is not running, the
gethostbyaddr() function searches the local hosts name file.
Use the endhostent() function to close the /etc/hosts file.
NOTES
The gethostbyaddr() function returns a pointer to thread-specific data.
Subsequent calls to this or a related function from the same thread
overwrite this data.
[DIGITAL] The gethostbyaddr_r() function is an obsolete reentrant version
of the gethostbyaddr() function. It is supported in order to maintain
backward compatibility with previous versions of the operating system and
should not be used in new designs. Note that you must zero-fill the hdptr
structure before its first access by the gethostbyaddr_r() function.
RETURN VALUES
Upon successful completion, the gethostbyaddr() function returns a pointer
to a hostent structure. If it reaches the end of the network hostname
database, it returns a null pointer.
[DIGITAL] Upon successful completion, the gethostbyaddr_r() function
stores the hostent structure in hptr, and returns a value of 0 (zero).
Upon failure, it returns a value of -1.
ERRORS
If the gethostbyaddr() or gethostbyaddr_r() function call fails, h_errno is
set to one of the following values:
[HOST_NOT_FOUND]
Host is unknown.
[NO_DATA] The server recognized the request and the name, but no address is
available for the name. Another type of name server request may
be successful.
[NO_RECOVERY]
An unexpected server failure occurred. This is a nonrecoverable
error.
[TRY_AGAIN]
A transient error occurred, for example, the server did not
respond. A retry at some later time may be successful.
[DIGITAL] If any of the following conditions occurs, the gethostbyaddr_r()
function sets errno to the corresponding value:
[EINVAL] The name, hptr, or hdptr is invalid, or type is not AF_INET.
FILES
/etc/hosts
This file is the DARPA Internet network hostname database. Each
record in the file occupies a single line and has three fields
consisting of the host address, official hostname, and aliases.
/etc/resolv.conf
The resolver configuration file.
/etc/svc.conf
The database service selection configuration file.
RELATED INFORMATION
Functions: endhostent(3), gethostbyname(3), sethostent(3).
Files: hosts(4), resolv.conf(4), svc.conf(4).
Networks: bind_intro(7), nis_intro(7).
Standards: standards(5)