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


#include <netdb.h>

struct rpcent *getrpcent(void);

struct rpcent *getrpcbyname(char *name);

struct rpcent *getrpcbynumber(int number);

void setrpcent(int stayopen);

void endrpcent(void);


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.


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


 RPC program number database.


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


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


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


This page is part of release 3.23 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at

openSUSE Logo