1*f8a44a67Sjmc.\" $OpenBSD: getnetent.3,v 1.19 2019/08/30 20:20:51 jmc Exp $ 2df930be7Sderaadt.\" 3df930be7Sderaadt.\" Copyright (c) 1983, 1991, 1993 4df930be7Sderaadt.\" The Regents of the University of California. All rights reserved. 5df930be7Sderaadt.\" 6df930be7Sderaadt.\" Redistribution and use in source and binary forms, with or without 7df930be7Sderaadt.\" modification, are permitted provided that the following conditions 8df930be7Sderaadt.\" are met: 9df930be7Sderaadt.\" 1. Redistributions of source code must retain the above copyright 10df930be7Sderaadt.\" notice, this list of conditions and the following disclaimer. 11df930be7Sderaadt.\" 2. Redistributions in binary form must reproduce the above copyright 12df930be7Sderaadt.\" notice, this list of conditions and the following disclaimer in the 13df930be7Sderaadt.\" documentation and/or other materials provided with the distribution. 146580fee3Smillert.\" 3. Neither the name of the University nor the names of its contributors 15df930be7Sderaadt.\" may be used to endorse or promote products derived from this software 16df930be7Sderaadt.\" without specific prior written permission. 17df930be7Sderaadt.\" 18df930be7Sderaadt.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 19df930be7Sderaadt.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 20df930be7Sderaadt.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 21df930be7Sderaadt.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 22df930be7Sderaadt.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 23df930be7Sderaadt.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 24df930be7Sderaadt.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 25df930be7Sderaadt.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 26df930be7Sderaadt.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 27df930be7Sderaadt.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 28df930be7Sderaadt.\" SUCH DAMAGE. 29df930be7Sderaadt.\" 30*f8a44a67Sjmc.Dd $Mdocdate: August 30 2019 $ 31df930be7Sderaadt.Dt GETNETENT 3 327949d54bSdownsj.Os 33df930be7Sderaadt.Sh NAME 34df930be7Sderaadt.Nm getnetent , 35df930be7Sderaadt.Nm getnetbyaddr , 36df930be7Sderaadt.Nm getnetbyname , 37df930be7Sderaadt.Nm setnetent , 38df930be7Sderaadt.Nm endnetent 39df930be7Sderaadt.Nd get network entry 40df930be7Sderaadt.Sh SYNOPSIS 4164d4e987Stedu.In netdb.h 42df930be7Sderaadt.Ft struct netent * 4377823d3fSaaron.Fn getnetent "void" 44df930be7Sderaadt.Ft struct netent * 454eb63f82Snordin.Fn getnetbyname "const char *name" 46df930be7Sderaadt.Ft struct netent * 4732210aa3Smillert.Fn getnetbyaddr "in_addr_t net" "int type" 4877823d3fSaaron.Ft void 49df930be7Sderaadt.Fn setnetent "int stayopen" 5077823d3fSaaron.Ft void 5177823d3fSaaron.Fn endnetent "void" 52df930be7Sderaadt.Sh DESCRIPTION 53df930be7SderaadtThe 540eb4c796Sschwarze.Fn getnetbyname 55df930be7Sderaadtand 56df930be7Sderaadt.Fn getnetbyaddr 570eb4c796Sschwarzefunctions return a pointer to an object with the following structure: 58df930be7Sderaadt.Bd -literal -offset indent 59df930be7Sderaadtstruct netent { 60df930be7Sderaadt char *n_name; /* official name of net */ 61df930be7Sderaadt char **n_aliases; /* alias list */ 62df930be7Sderaadt int n_addrtype; /* net number type */ 6332210aa3Smillert in_addr_t n_net; /* net number */ 64df930be7Sderaadt}; 65df930be7Sderaadt.Ed 66df930be7Sderaadt.Pp 67df930be7SderaadtThe members of this structure are: 68df930be7Sderaadt.Bl -tag -width n_addrtype 69df930be7Sderaadt.It Fa n_name 70df930be7SderaadtThe official name of the network. 71df930be7Sderaadt.It Fa n_aliases 725a14067eSjaredyA null-terminated list of alternate names for the network. 73df930be7Sderaadt.It Fa n_addrtype 740eb4c796SschwarzeThe type of the network number returned; it is always 753a03493dSaaron.Dv AF_INET . 76df930be7Sderaadt.It Fa n_net 7710cc2884SaaronThe network number. 7810cc2884SaaronNetwork numbers are returned in machine byte order. 79df930be7Sderaadt.El 80df930be7Sderaadt.Pp 810eb4c796SschwarzeOn 820eb4c796Sschwarze.Ox , 830eb4c796Sschwarzethese legacy functions perform a lookup in a similar fashion as 840eb4c796Sschwarze.Xr gethostbyname 3 85df930be7Sderaadtand 860eb4c796Sschwarze.Xr gethostbyaddr 3 , 870eb4c796Sschwarzerespectively. 880eb4c796SschwarzeOn other systems, they may use a separate network database file, 890eb4c796Sschwarze.Pa /etc/networks . 900eb4c796Sschwarze.Pp 910eb4c796SschwarzeIn contrast to 920eb4c796Sschwarze.Xr gethostbyaddr 3 , 930eb4c796Sschwarzethe 940eb4c796Sschwarze.Fa net 950eb4c796Sschwarzeargument is expected in machine byte order. 960eb4c796Sschwarze.Pp 970eb4c796SschwarzeThe 980eb4c796Sschwarze.Fn setnetent , 990eb4c796Sschwarze.Fn getnetent , 1000eb4c796Sschwarzeand 1010eb4c796Sschwarze.Fn endnetent 1020eb4c796Sschwarzefunctions are deprecated and no longer have any effect. 1030eb4c796SschwarzeThey could be used in the past to iterate over entries in the former file 1040eb4c796Sschwarze.Pa /etc/networks . 10593ca0b48Sschwarze.Sh RETURN VALUES 10693ca0b48SschwarzeThe 1070eb4c796Sschwarze.Fn getnetbyaddr 10893ca0b48Sschwarzeand 10993ca0b48Sschwarze.Fn getnetbyname 11093ca0b48Sschwarzefunctions return 11193ca0b48Sschwarze.Dv NULL 11293ca0b48Sschwarzeif the requested entry is not found. 1130eb4c796Sschwarze.Pp 1140eb4c796SschwarzeThe 1150eb4c796Sschwarze.Fn getnetent 1160eb4c796Sschwarzefunction always returns 1170eb4c796Sschwarze.Dv NULL . 118df930be7Sderaadt.Sh FILES 1190eb4c796Sschwarze.Bl -tag -width /etc/hosts -compact 1200eb4c796Sschwarze.It Pa /etc/hosts 1210eb4c796SschwarzeThe local host and network name database. 122df930be7Sderaadt.El 123df930be7Sderaadt.Sh SEE ALSO 1240eb4c796Sschwarze.Xr getaddrinfo 3 , 1250eb4c796Sschwarze.Xr gethostbyname 3 , 1260eb4c796Sschwarze.Xr getnameinfo 3 , 127*f8a44a67Sjmc.Xr res_init 3 , 1280eb4c796Sschwarze.Xr hosts 5 12993ca0b48Sschwarze.Sh STANDARDS 13093ca0b48SschwarzeThese functions conform to 13193ca0b48Sschwarze.St -p1003.1-2008 . 132df930be7Sderaadt.Sh HISTORY 133df930be7SderaadtThe 134df930be7Sderaadt.Fn getnetent , 135df930be7Sderaadt.Fn getnetbyaddr , 136df930be7Sderaadt.Fn getnetbyname , 137df930be7Sderaadt.Fn setnetent , 138df930be7Sderaadtand 139df930be7Sderaadt.Fn endnetent 140df930be7Sderaadtfunctions appeared in 141df930be7Sderaadt.Bx 4.2 . 142df930be7Sderaadt.Sh BUGS 143aff2b1e4SmillertThe data space used by these functions is static; if future use 144aff2b1e4Smillertrequires the data, it should be copied before any subsequent calls 14510cc2884Saaronto these functions overwrite it. 14610cc2884SaaronOnly Internet network numbers are currently understood. 14710cc2884SaaronExpecting network numbers to fit in no more than 32 bits is naive. 148