SPECIFICATION
Remote Procedure Calls: Protocol Specification.
Sun Microsystems, Inc., Mountain View, Calif., May 1988.
SYNOPSIS
Sun RPC is a fairly complete implementation of Sun's remote
procedure call protocol. This implementation is compatible with Sun's
native implementation. The interface to our implementation of Sun RPC
in no way resembles Sun's. The Sun Portmapper is treated as a separate
protocol that sits on top of Sun RPC. This implementation only
supports UDP as a lower level protocol. The protocol supports
unreliable remote procedure calls to possibly heterogeneous hosts. Our
implementation of the Sun RPC protocol uses most but not all of the
original Sun RPC include files and XDR files. Thus, you must have
access to Sun include and XDR files to compile this protocol.
REALM
SUNRPC is in the RPC realm.
PARTICIPANTS
SUNRPC removes three pointers to longs from the remote
participant stack, representing the procedure, version and program
number (starting from the top of the stack.)
The local participant may be present, in which case it is passed on
untouched to the next protocol, or it may be absent.
CONTROL OPERATIONS
- SUNRPC_CLNTGETERROR:
-
Returns an RPC error status structure. (session only)
- Input:
- none
- Output:
- struct rpc_err
- SUNRPC_CLNTSETTOUT:
-
Sets the client timeout value; the amount of time the client
will wait before resending the message. (session only)
- Input:
- struct timeval
- Output:
- none
- SUNRPC_CLNTGETTOUT:
-
Returns the client timeout value. (session only)
- Input:
- none
- Output:
- struct timeval
- SUNRPC_CLNTSETWAIT:
-
Sets the client wait value, the amount of time the client will
wait before returning an error. (session only)
- Input:
- struct timeval
- Output:
- none
- SUNRPC_CLNTGETWAIT:
-
Returns the client wait value. (session only)
- Input:
- none
- Output:
- struct timeval
- SUNRPC_GETCREDTYPE:
-
Returns the type of authentication credentials used.
Valid types are NULL authentication, Unix authentication and DES
authentication. Note that the protocol or user above Sun RPC is
completely responsible for all authentication; the Sun RPC
protocol merely copies credentials into and out of the header.
(session only)
- Input:
- none
- Output:
- int
- SUNRPC_GETCRED:
-
Returns the authentication credentials used in an
opaque byte string. (session only)
- Input:
- none
- Output:
- char *
- SUNRPC_SETCREDTYPE:
-
Sets the type of authentication credentials used (session only)
- Input:
- int
- output:
- none
- SUNRPC_SETCRED:
-
Sets the authentication credentials used in an
opaque byte string (already xdr'ed). (session only)
- Input:
- char *
- Output:
- none
- SUNRPC_GETVERFTYPE:
-
Returns the type of authentication verification used.
Valid types are NULL authentication, Unix authentication, and DES
authentication. (session only)
- Input:
- none
- Output:
- int
- SUNRPC_GETVERF:
-
Returns the authentication verification used contained in an
opaque byte string. (session only)
- Input:
- none
- Output:
- char *
- SUNRPC_SETVERFTYPE:
-
Sets the type of authentication verification used. (session only)
- Input:
- int
- Output:
- none
- SUNRPC_SETVERF:
-
Sets the authentication verification used contained in an
opaque byte string (already xdr'ed) (session only)
- Input:
- char *
- Output:
- none
- SUNRPC_SVCAUTHERR:
-
Causes session to return authentication error message and
terminate. (session only)
- Input:
- char *
- Output:
- none
- SUNRPC_SVCSYSTEMERR:
-
Causes session to return a system error message and
terminate. (session only)
- Input:
- char *
- Output:
- none
CONFIGURATION
SUNRPC is a realm
boundary protocol which assumes
its lower protocol is symmetric (in the ASYNC realm.)
name=sunrpc protocols=udp;
AUTHORS
Sean O`Malley and Richard Schroeppel