Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

rpc(5)

svc.conf(5)

getrpcent(3n)

Name

getrpcent, getrpcbynumber, getrpcbyname, setrpcent, endrpcent − get rpc entry

Syntax

#include <netdb.h>

struct rpcent *getrpcent()

struct rpcent *getrpcbynumber(number)
int number;

struct rpcent *getrpcbyname(name)
char *name;

setrpcent(stayopen)
int stayopen;

endrpcent( )

Description

The getrpcent, getrpcbynumber and getrpcbyname subroutines each return pointers to an object with the following structure containing the broken-out fields of a line in the rpc database:

struct  rpcent {               /* see getrpcent(3) */
        char    *r_name;
        char    **r_aliases;   /* alias list */
        char    r_number;      /* rpc program number */
};
struct group *getrpcent(), *getrpcbynumber(), *getrpcbyname();

The members of this structure are:

r_name The name of the rpc. 

r_aliases A zero-terminated list of alternate names for the rpc. 

r_number The rpc program number for the rpc. 

If the stayopen flag on the setrpcent subroutine is NULL, the rpc database is opened.  Otherwise the setrpcent has the effect of rewinding the rpc database. The endrpcent may be called to close the rpc file when processing is complete.

The getrpcent subroutine simply reads the next line while getrpcbynumber and getrpcbyname search until a matching gid or name is found (or until EOF is encountered).  The getrpcent subroutine keeps a pointer in the database, allowing successive calls to be used to search the entire file.

A call to setrpcent must be made before a while loop using getrpcent in order to perform initialization and an endrpcent must be used after the loop.  Both getrpcbynumber and getrpcbyname make calls to setrpcent and endrpcent.

Restrictions

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

If YP is running, getrpcent does not return the entries in any particular order. See the Guide to the Yellow Pages Service for setup information. 

The rpc database may also be distributed by the BIND/Hesiod naming service.  See the Guide to the BIND/Hesiod Service for more information. 

Return Values

A null pointer (0) is returned on EOF or error. 

Files

/etc/rpc

See Also

rpc(5), svc.conf(5)
Guide to the BIND/Hesiod Service
Guide to the Yellow Pages Service
 

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026