The Reply to an Accepted Request
This section explains the reply to an accepted request.
An RPC reply message for a request accepted by the network server
has the following structure:
struct accepted_reply areply {
opaque_auth verf;
union switch (enum accept_stat stat) {
case SUCCESS:
opaque results {0};
/* procedure specific results start here */
case PROG_MISMATCH:
struct {
unsigned int low;
unsigned int high;
} mismatch_info;
default:
void;
} reply_data;
};
The structures within the accepted reply are:
Item | Description |
---|---|
opaque_auth verf | Authentication verifier generated by the server to identify itself to the caller. |
enum accept_stat | A discriminant that acts as a switch between SUCCESS, PROG_MISMATCH, and other appropriate conditions. |
The accept_stat enumeration data type has the following
definitions:
enum accept_stat {
SUCCESS = 0, /* RPC executed successfully */
PROG_UNAVAIL = 1, /* remote has not exported program */
PROG_MISMATCH = 2, /* remote cannot support version # */
PROC_UNAVAIL = 3, /* program cannot support procedure */
GARBAGE_ARGS = 4, /* procedure cannot decode params */
};
The structures within the accept_stat enumeration data type are defined as follows:
Item | Description |
---|---|
SUCCESS | RPC call is successful. |
PROG_UNAVAIL | The remote server has not exported the program. |
PROG_MISMATCH | The remote server cannot support the client's version number. Returns the lowest and highest version numbers of the remote program that are supported by the server. |
PROC_UNAVAIL | The program cannot support the requested procedure. |
GARBAGE_ARGS | The procedure cannot decode the parameters specified in the call. |
Note: An error condition can exist even when a call message is accepted
by the server.