getnetbyaddr() — Get a network entry by address
Standards
Standards / Extensions | C or C++ | Dependencies |
---|---|---|
XPG4.2 |
both |
Format
XPG4.2:
#define _XOPEN_SOURCE_EXTENDED 1
#include <netdb.h>
struct netent *getnetbyaddr(ip_addr_t net, int type);
SUSV3:
#define _POSIX_C_SOURCE 200112L
#include <netdb.h>
struct netent *getnetbyaddr(uint32_t net, int type);
Berkeley
sockets:
#define _OE_SOCKETS
#include <sys/types.h>
#include <netdb.h>
struct netent *getnetbyaddr(unsigned long net, int type);
General description
The getnetbyaddr()
call searches the tcpip.HOSTS.ADDRINFO data
set for the specified network address.
- Parameter
- Description
- net
- The network address.
- type
- The address domain supported (AF_INET).
If the name server is not present or the RESOLVE_VIA_LOOKUP
option is in effect, you can use the X_ADDR environment variable
to specify a data set other than tcpip.HOSTS.ADDRINFO.
Note: For more information on these data sets and environment variables, tcpip.HOSTS.LOCAL, tcpip.HOSTS.ADDRINFO,
and tcpip.HOSTS.SITEINFO, see z/OS Communications Server: IP Configuration Guide.
getnetbyaddr(), getnetbyname(), and getnetent() all use the same static area to return the netent structure. This static area is only valid until the next one of these functions is called on the same thread.
The netent structure
is defined in the netdb.h include file and contains the following
elements:
- Element
- Description
- n_addrtype
- The type of network address returned. The call always sets this value to AF_INET.
- n_aliases
- An array, terminated with a NULL pointer, of alternative names for the network.
- n_name
- The official name of the network.
- n_net
- The network number, returned in host byte order.
Special behavior for C++: To use this function with C++, you must use the _XOPEN_SOURCE_EXTENDED 1 feature test macro.
Returned value
If successful, getnetbyaddr() returns a pointer to a netent structure. The return value points to data that is overwritten by subsequent calls returning the same data structure.
If unsuccessful, getnetbyaddr() returns a NULL pointer, indicating an error or End Of File (EOF).