#include <netdb.h> struct rpcent *getrpcent() struct rpcent *getrpcbyname(name) char *name; struct rpcent *getrpcbynumber(number) int number; setrpcent (stayopen) int stayopen endrpcent ()
getrpcent(), getrpcbyname(), and getrpcbynumber() 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, /etc/rpc.
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:
getrpcent() reads the next line of the file, opening the file if necessary.
getrpcent() opens and rewinds the file. If the stayopen flag is non-zero, the net data base will not be closed after each call to getrpcent() (either directly, or indirectly through one of the other ``getrpc'' calls).
endrpcent closes the file.
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.
A NULL pointer is returned on EOF or error.
All information is contained in a static area so it must be copied if it is to be saved.