summaryrefslogtreecommitdiffstats
path: root/man/man3/getnetent.3
diff options
context:
space:
mode:
Diffstat (limited to 'man/man3/getnetent.3')
-rw-r--r--man/man3/getnetent.3206
1 files changed, 206 insertions, 0 deletions
diff --git a/man/man3/getnetent.3 b/man/man3/getnetent.3
new file mode 100644
index 0000000..80fc853
--- /dev/null
+++ b/man/man3/getnetent.3
@@ -0,0 +1,206 @@
+'\" t
+.\" Copyright 1993 David Metcalfe (david@prism.demon.co.uk)
+.\"
+.\" SPDX-License-Identifier: Linux-man-pages-copyleft
+.\"
+.\" References consulted:
+.\" Linux libc source code
+.\" Lewine's _POSIX Programmer's Guide_ (O'Reilly & Associates, 1991)
+.\" 386BSD man pages
+.\" Modified Sat Jul 24 21:48:06 1993 by Rik Faith (faith@cs.unc.edu)
+.TH getnetent 3 2024-05-02 "Linux man-pages (unreleased)"
+.SH NAME
+getnetent, getnetbyname, getnetbyaddr, setnetent, endnetent \-
+get network entry
+.SH LIBRARY
+Standard C library
+.RI ( libc ", " \-lc )
+.SH SYNOPSIS
+.nf
+.B #include <netdb.h>
+.P
+.B struct netent *getnetent(void);
+.P
+.BI "struct netent *getnetbyname(const char *" name );
+.BI "struct netent *getnetbyaddr(uint32_t " net ", int " type );
+.P
+.BI "void setnetent(int " stayopen );
+.B void endnetent(void);
+.fi
+.SH DESCRIPTION
+The
+.BR getnetent ()
+function reads the next entry from the networks database
+and returns a
+.I netent
+structure containing
+the broken-out fields from the entry.
+A connection is opened to the database if necessary.
+.P
+The
+.BR getnetbyname ()
+function returns a
+.I netent
+structure
+for the entry from the database
+that matches the network
+.IR name .
+.P
+The
+.BR getnetbyaddr ()
+function returns a
+.I netent
+structure
+for the entry from the database
+that matches the network number
+.I net
+of type
+.IR type .
+The
+.I net
+argument must be in host byte order.
+.P
+The
+.BR setnetent ()
+function opens a connection to the database,
+and sets the next entry to the first entry.
+If
+.I stayopen
+is nonzero,
+then the connection to the database
+will not be closed between calls to one of the
+.BR getnet* ()
+functions.
+.P
+The
+.BR endnetent ()
+function closes the connection to the database.
+.P
+The
+.I netent
+structure is defined in
+.I <netdb.h>
+as follows:
+.P
+.in +4n
+.EX
+struct netent {
+ char *n_name; /* official network name */
+ char **n_aliases; /* alias list */
+ int n_addrtype; /* net address type */
+ uint32_t n_net; /* network number */
+}
+.EE
+.in
+.P
+The members of the
+.I netent
+structure are:
+.TP
+.I n_name
+The official name of the network.
+.TP
+.I n_aliases
+A NULL-terminated list of alternative names for the network.
+.TP
+.I n_addrtype
+The type of the network number; always
+.BR AF_INET .
+.TP
+.I n_net
+The network number in host byte order.
+.SH RETURN VALUE
+The
+.BR getnetent (),
+.BR getnetbyname (),
+and
+.BR getnetbyaddr ()
+functions return a pointer to a
+statically allocated
+.I netent
+structure, or a null pointer if an
+error occurs or the end of the file is reached.
+.SH FILES
+.TP
+.I /etc/networks
+networks database file
+.SH ATTRIBUTES
+For an explanation of the terms used in this section, see
+.BR attributes (7).
+.TS
+allbox;
+lb lb lbx
+l l l.
+Interface Attribute Value
+T{
+.na
+.nh
+.BR getnetent ()
+T} Thread safety T{
+.na
+.nh
+MT-Unsafe race:netent
+race:netentbuf env locale
+T}
+T{
+.na
+.nh
+.BR getnetbyname ()
+T} Thread safety T{
+.na
+.nh
+MT-Unsafe race:netbyname
+env locale
+T}
+T{
+.na
+.nh
+.BR getnetbyaddr ()
+T} Thread safety T{
+.na
+.nh
+MT-Unsafe race:netbyaddr
+locale
+T}
+T{
+.na
+.nh
+.BR setnetent (),
+.BR endnetent ()
+T} Thread safety T{
+.na
+.nh
+MT-Unsafe race:netent env
+locale
+T}
+.TE
+.P
+In the above table,
+.I netent
+in
+.I race:netent
+signifies that if any of the functions
+.BR setnetent (),
+.BR getnetent (),
+or
+.BR endnetent ()
+are used in parallel in different threads of a program,
+then data races could occur.
+.SH STANDARDS
+POSIX.1-2008.
+.SH HISTORY
+POSIX.1-2001, 4.3BSD.
+.P
+Before glibc 2.2, the
+.I net
+argument of
+.BR getnetbyaddr ()
+was of type
+.IR long .
+.SH SEE ALSO
+.BR getnetent_r (3),
+.BR getprotoent (3),
+.BR getservent (3)
+.\" .BR networks (5)
+.br
+RFC\ 1101