Name

getrpcent, getrpcbyname, getrpcbynumber, setrpcent, endrpcent — get RPC entry

Synopsis

#include <netdb.h>
struct rpcent *getrpcent( void);  
 
struct rpcent *getrpcbyname( char *name);
 
struct rpcent *getrpcbynumber( int number);
 
void setrpcent( int stayopen);
 
void endrpcent( void);  
 

DESCRIPTION

getrpcent(), getrpcbyname(), and getrpcbynumber() each return a pointer to an object with the following structure containing the broken-out fields of an entry in the RPC program number data base.

struct rpcent {
  char * r_name;
/* name of server for this RPC program */
  char ** r_aliases;
/* alias list */
  long   r_number;
/* RPC program number */
};

The members of this structure are:

r_name

The name of the server for this RPC program.

r_aliases

A NULL-terminated list of alternate names for the RPC program.

r_number

The RPC program number for this service.

getrpcent() reads the next entry from the database. A connection is opened to the database if necessary.

setrpcent() function opens a connection to the database, and sets the next entry to the first entry. If stayopen is non-zero, then the connection to the database will not be closed between calls to one of the getrpc*() functions.

The endrpcent() function closes the connection to the database.

getrpcbyname() and getrpcbynumber() 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.

RETURN VALUE

On success, getrpcent(), getrpcbyname(), and getrpcbynumber() return a pointer to a statically allocated rpcent structure. A NULL pointer is returned on EOF or error.

FILES

/etc/rpc

RPC program number database.

CONFORMING TO

Not in POSIX.1-2001. Present on the BSDs, Solaris, and many other systems.

BUGS

All information is contained in a static area so it must be copied if it is to be saved.

SEE ALSO

getrpcent_r(3), rpc(5), rpcinfo(8), ypserv(8)

COLOPHON

This page is part of release 3.20 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/.


  This page was taken from the 4.4BSD-Lite CDROM (BSD license)

(#)getrpcent.3n 2.2 88/08/02 4.0 RPCSRC; from 1.11 88/03/14 SMI