-.\" from: @(#)getrpcent.3n 2.2 88/08/02 4.0 RPCSRC; from 1.11 88/03/14 SMI
-.\" $Id: getrpcent.3,v 1.1 1999/04/13 23:15:37 wsanchez Exp $
+.\" @(#)getrpcent.3n 2.2 88/08/02 4.0 RPCSRC; from 1.11 88/03/14 SMI
+.\" $NetBSD: getrpcent.3,v 1.6 1998/02/05 18:49:06 perry Exp $
+.\" $FreeBSD: src/lib/libc/rpc/getrpcent.3,v 1.18 2005/01/20 09:17:04 ru Exp $
.\"
.Dd December 14, 1987
.Dt GETRPCENT 3
.Nm endrpcent ,
.Nm setrpcent
.Nd get RPC entry
+.Sh LIBRARY
+.Lb libc
.Sh SYNOPSIS
-.Fd #include <netdb.h>
+.In rpc/rpc.h
.Ft struct rpcent *
.Fn getrpcent void
.Ft struct rpcent *
.Fn getrpcbynumber "int number"
.Ft void
.Fn setrpcent "int stayopen"
-.Ft void
+.Ft void
.Fn endrpcent void
.Sh DESCRIPTION
+The
.Fn getrpcent ,
.Fn getrpcbyname ,
and
-.Fn getrpcbynumber ,
+.Fn getrpcbynumber
+functions
each return a pointer to an object with the
following structure
containing the broken-out
fields of a line in the rpc program number data base,
.Pa /etc/rpc :
-.Bd -literal -offset indent
+.Bd -literal
struct rpcent {
char *r_name; /* name of server for this rpc program */
char **r_aliases; /* alias list */
.Pp
The members of this structure are:
.Bl -tag -width r_aliases -offset indent
-.It r_name
+.It Va r_name
The name of the server for this rpc program.
-.It r_aliases
+.It Va r_aliases
A zero terminated list of alternate names for the rpc program.
-.It r_number
+.It Va r_number
The rpc program number for this service.
.El
.Pp
+The
.Fn getrpcent
+function
reads the next line of the file, opening the file if necessary.
.Pp
+The
.Fn setrpcent
-opens and rewinds the file. If the
+function
+opens and rewinds the file.
+If the
.Fa stayopen
flag is non-zero,
the net data base will not be closed after each call to
-.Fn getrpcent
+.Fn getrpcent
(either directly, or indirectly through one of
-the other
+the other
.Dq getrpc
calls).
.Pp
+The
.Fn endrpcent
+function
closes the file.
.Pp
+The
.Fn getrpcbyname
and
.Fn getrpcbynumber
+functions
sequentially search from the beginning
of the file until a matching rpc program name or
program number is found, or until end-of-file is encountered.
.Sh FILES
-.Pa /etc/rpc
-.Sh SEE ALSO
-.Xr rpc 5 ,
-.Xr rpcinfo 8 ,
-.Xr ypserv 8
+.Bl -tag -width /etc/rpc -compact
+.It Pa /etc/rpc
+.El
.Sh DIAGNOSTICS
A
.Dv NULL
-pointer is returned on
+pointer is returned on
.Dv EOF
or error.
+.Sh SEE ALSO
+.Xr rpc 5 ,
+.Xr rpcinfo 8 ,
+.Xr ypserv 8
.Sh BUGS
-All information
-is contained in a static area
-so it must be copied if it is
-to be saved.
+.\"All information
+.\"is contained in a static area
+.\"so it must be copied if it is
+.\"to be saved.
+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.