Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

rpc(3C)

NAME

rpc() − library routines for remote procedure calls

DESCRIPTION

These routines allow C programs to make procedure calls on other machines across the network.  First, the client calls a procedure to send a data packet to the server.  Upon receipt of the packet, the server calls a dispatch routine to perform the requested service and then sends back a reply.  Finally, the procedure call returns to the client. 

Functions

auth_destroy() Destroy authentication information handle. 

authnone_create() Return RPC authentication handle with no checking. 

authunix_create() Return RPC authentication handle with UNIX permissions. 

authunix_create_default()
Return default UNIX authentication handle. 

callrpc() Call remote procedure, given [prognum,versnum,procnum]. 

clnt_broadcast() Broadcast remote procedure call everywhere. 

clnt-call() Call remote procedure associated with client handle. 

clnt_control() Change or retrieve information associated with a client handle. 

clnt_create() Create RPC client using the transport specified by the caller. 

clnt_destroy() Destroy client’s RPC handle. 

clnt_freeres() Free data allocated by RPC/XDR system when decoding results. 

clnt_geterr() Copy error information from client handle to error structure. 

clnt_pcreateerror() Print message to stderr about why client handle creation failed. 

clnt_perrno() Print message to stderr corresponding to condition given. 

clnt_perror() Print message to stderr explaining why an RPC call failed. 

clnt_spcreateerror() Return a pointer to a null-delimited string telling why the client handle creation failed. 

clnt_sperrno() Return a pointer to a null-delimited string containing a message corresponding to the error value passed to this function. 

clnt_sperror() Return a pointer to a null-delimited string telling why an RPC call failed. 

clntraw_create() Create toy RPC client for simulation. 

clnttcp_create() Create RPC client using TCP transport. 

clntudp_create() Create RPC client using UDP transport. 

get_myaddress() Get the machine’s IP address. 

gettransient() Get a program number in the transient range. 

pmap_getmaps() Return list of RPC program-to-port mappings. 

pmap_getport() Return port number on which waits supporting service. 

pmap_rmtcall() Instruct portmapper to make an RPC call. 

pmap_set() Establish mapping between [prognum,versnum,procnum] and port. 

pmap_unset() Destroy mapping between [prognum,versnum,procnum] and port. 

registerrpc() Register procedure with RPC service package. 

rpc_createerr() Global variable indicating reason why client creation failed. 

svc_destroy Destroy RPC service transport handle. 

svc_fdset() Global array with RPC service file descriptor mask; can handle up to NOFILE socket descriptors ( NOFILE defined in header file <sys/parm.h>). 

svc_freeargs() Free data allocated by RPC/XDR system when decoding arguments. 

svc_getargs() Decode the arguments of an RPC request. 

svc_getcaller() Get the network address of the caller of a procedure. 

svc_getreqset() Return when all associated sockets have been serviced. 

svc_register() Associate prognum and versnum with service dispatch procedure. 

svc_run() Wait for RPC requests to arrive and call appropriate service. 

svc_sendreply() Send back results of a remote procedure call. 

svc_unregister() Remove mapping of [prognum,versnum] to dispatch routines. 

svcerr_auth() Called when refusing service because of authentication error. 

svcerr_decode() Called when service cannot decode its parameters. 

svcerr_noproc() Called when service hasn’t implemented the desired procedure. 

svcerr_noprog() Called when program is not registered with RPC package. 

svcerr_progvers() Called when version is not registered with RPC package. 

svcerr_systemerr() Called when service detects system error. 

svcerr_weakauth() Called when refusing service because of insufficient authentication. 

svcfd_create() Create an RPC service from an existing socket. 

svcraw_create() Create a toy RPC service transport for testing. 

svctcp_create() Create an RPC service based on TCP transport. 

svcudp_create() Create an RPC service based on UDP transport. 

xdr_accepted_reply() Generate RPC -style replies without using RPC package. 

xdr_authunix_parms() Generate UNIX credentials without using RPC package. 

xdr_callhdr() Generate RPC -style headers without using RPC package. 

xdr_callmsg() Generate RPC -style messages without using RPC package. 

xdr_opaque_auth() Describe RPC messages, externally. 

xdr_pmap() Describe parameters for portmap procedures, externally. 

xdr_pmaplist() Describe a list of port mappings, externally. 

xdr_rejected_reply() Generate RPC-style rejections without using RPC package. 

xdr_replymsg() Generate RPC-style replies without using RPC package. 

xprt_register() Register RPC service transport with RPC package. 

xprt_unregister() Unregister RPC service transport from RPC package

AUTHOR

rpc was developed by Sun Microsystems, Inc. 

SEE ALSO

Programming and Protocols for NFS Services.

Hewlett-Packard Company  —  HP-UX Release 9.0: August 1992

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