Registers an interface at a server.
The rpc_$register routine registers an interface with the Remote Procedure Call (RPC) runtime library. After an interface is registered, the RPC runtime library passes requests for that interface to the server.
You can call rpc_$register multiple times with the same interface (for example, from various subroutines of the same server), but each call must specify the same entry point vector (EPV). Each registration increments a reference count for the registered interface. An equal number of calls to the rpc_$unregister routine are then required to unregister the interface.
Input
Item | Description |
---|---|
if_spec | Points to the interface being registered. |
epv | Specifies the EPV for the operations in the interface. |
Output
Item | Description |
---|---|
status | Points to the completion status. |
The rpc_$register routine fails if one or more of the following is true:
Value | Description |
---|---|
rpc_$too_many_ifs | The maximum number of interfaces is already registered with the server. |
rpc_$illegal_register | You are trying to register an interface that is already registered, and you are using an EPV different from the one used when the interface was first registered. |
To register a bank interface with the bank server host's RPC runtime library, enter:
rpc_$register(&bank_$if_spec, bank_$server_epv, &st);