|
gethostbyaddr(3)
Contents
|
gethostbyaddr, gethostbyaddr_r - Get a network host entry
by address
#include <netdb.h>
struct hostent *gethostbyaddr(
const void *addr,
size_t len,
int type );
[Tru64 UNIX] The following obsolete routine 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 );
[Tru64 UNIX] The following definition of the gethostbyaddr()
routine 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 );
Standard C Library (libc)
Interfaces documented on this reference page conform to
industry standards as follows:
gethostbyaddr(): XNS4.0, XNS5.0
Refer to the standards(5) reference page for more information
about industry standards and associated tags.
Specifies an Internet address in network order. Specifies
the number of bytes in an Internet address. Specifies the
Internet domain address format (AF_INET). [Tru64
UNIX] Is data for the host database. The netdb.h header
file defines the hostent_data structure. [Tru64
UNIX] Points to the hostent structure. The netdb.h
header file defines the hostent structure.
The gethostbyaddr() routine 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 DNS/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() routine 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 addr parameter
must specify the address in network order. The type
parameter must be the constant AF_INET, which specifies
the Internet Protocol Version 4 (IPv4) address format.
When EOF (End-of-File) is reached without a match, an
error value is returned.
If using DNS/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() routine
searches the local hosts name file.
Use the endhostent() routine to close the /etc/hosts file.
The gethostbyaddr() routine returns a pointer to threadspecific
data. Subsequent calls to this or a related routine
from the same thread overwrite this data.
[Tru64 UNIX] The gethostbyaddr_r() routine is an obsolete
reentrant version of the gethostbyaddr() routine. 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()
routine.
Upon successful completion, the gethostbyaddr() routine
returns a pointer to a hostent structure. If it reaches
the end of the network hostname database, it returns a
null pointer.
[Tru64 UNIX] Upon successful completion, the gethostbyaddr_r()
routine stores the hostent structure in hptr,
and returns a value of 0 (zero). Upon failure, it returns
a value of -1.
If the gethostbyaddr() or gethostbyaddr_r() routine call
fails, h_errno is set to one of the following values: Host
is unknown. 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. An unexpected
server failure occurred. This is a nonrecoverable
error. A transient error occurred, for example, the
server did not respond. A retry at some later time may be
successful.
[Tru64 UNIX] If any of the following conditions occurs,
the gethostbyaddr_r() routine sets errno to the corresponding
value: The name, hptr, or hdptr is invalid, or
type is not AF_INET.
This file is the 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. The resolver configuration file. The
database service selection configuration file.
routines: 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)
Network Programmer's Guide
gethostbyaddr(3)
[ Back ] |