FreeBSD manual
download PDF document: getnetent_r.3.pdf
GETNETENT(3) FreeBSD Library Functions Manual GETNETENT(3)
NAME
getnetent, getnetbyaddr, getnetbyname, setnetent, endnetent - get network
entry
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#include <netdb.h>
struct netent *
getnetent(void);
struct netent *
getnetbyname(const char *name);
struct netent *
getnetbyaddr(uint32_t net, int type);
void
setnetent(int stayopen);
void
endnetent(void);
int
getnetent_r(struct netent *ne, char *buffer, size_t buflen,
struct netent **result, int *h_errnop);
int
getnetbyaddr_r(uint32_t net, int type, struct netent *ne, char *buffer,
size_t buflen, struct netent **result, int, *h_errorp");
int
getnetbyname_r(const char *name, struct netent *ne, char *buffer,
size_t buflen, struct netent **result, int *h_errorp);
DESCRIPTION
The getnetent(), getnetbyname(), and getnetbyaddr() functions each return
a pointer to an object with the following structure describing an
internet network. This structure contains either the information
obtained from the nameserver, broken-out fields of a line in the network
data base /etc/networks, or entries supplied by the yp(8) system. The
order of the lookups is controlled by the `networks' entry in
nsswitch.conf(5).
struct netent {
char *n_name; /* official name of net */
char **n_aliases; /* alias list */
int n_addrtype; /* net number type */
uint32_t n_net; /* net number */
};
The members of this structure are:
n_name The official name of the network.
The getnetent() function reads the next line of the file, opening the
file if necessary.
The setnetent() function opens and rewinds the file. If the stayopen
flag is non-zero, the net data base will not be closed after each call to
getnetbyname() or getnetbyaddr().
The endnetent() function closes the file.
The getnetbyname() function and getnetbyaddr() sequentially search from
the beginning of the file until a matching net name or net address and
type is found, or until EOF is encountered. The type argument must be
AF_INET. Network numbers are supplied in host order.
Functions with the _r suffix provide reentrant versions of their
respective counterparts. The caller must supply five additional
parameters: a struct netent variable to be filled on success, a buffer of
buflen bytes in size, a struct netent result variable that will point to
the result on success or be set to NULL on failure or if the name is not
found. The h_errnop variable will be filled with the error code if any.
All these functions return 0 on success.
FILES
/etc/networks
/etc/nsswitch.conf
/etc/resolv.conf
DIAGNOSTICS
Null pointer returned on EOF or error.
SEE ALSO
networks(5)
RFC 1101
HISTORY
The getnetent(), getnetbyaddr(), getnetbyname(), setnetent(), and
endnetent() functions appeared in 4.2BSD.
BUGS
The data space used by these functions is thread-specific; if future use
requires the data, it should be copied before any subsequent calls to
these functions overwrite it. Only Internet network numbers are
currently understood. Expecting network numbers to fit in no more than
32 bits is probably naive.
FreeBSD 14.0-RELEASE-p11 June 27, 2022 FreeBSD 14.0-RELEASE-p11