rpc_mgmt_set_com_timeout(3rpc)
Sets the communications time-out value in a binding handle
Used by client applications.
Synopsis
#include <dce/rpc.h>
void rpc_mgmt_set_com_timeout(
rpc_binding_handle_t binding,
unsigned32 timeout,
unsigned32 *status);
Parameters
Input
binding Specifies the server binding handle whose time-out value is set.
timeout Specifies a communications time-out value.
Output
status Returns the status code from this routine. This status code indicates whether the routine completed successfully or, if not, why not.
Description The rpc_mgmt_set_com_timeout( ) routine resets the communications timeout value in a server binding handle. The timeout value specifies the relative amount
of time to spend trying to communicate with the server. Depending on the protocol sequence for the specified binding handle, the timeout value acts only as advice to the RPC runtime.
After the initial relationship is established, subsequent communications for the binding handle cannot revert to less than the default timeouts for the protocol service. This means that after
setting a short initial timeout and establishing a connection, calls in progress are not timed out any sooner than the default.
Note that because of differences in underlying transport layers, only the rpc_c_infinite_binding_timeout constant changes binding behavior when rpc_mgmt_set_com_timeout( ) is used
with connection-oriented RPC.
The timeout value can be any integer value from 0 (zero) to 10. Note that these values do not represent seconds. They represent a relative amount of time to spend to establish a
client/server relationship (a binding).
Constants are provided for certain values in the timeout range. The following table lists the binding timeout values, describing the DCE RPC predefined values that an application can use for the
timeout parameter.
Predefined Time-Out Values |
Name |
Value |
Description |
rpc_c_binding_min_timeout |
0 |
Attempts to communicate for the minimum amount of time for the network protocol being used. This value favors response time over correctness in determining whether the server is running. |
rpc_c_binding_default_timeout |
5 |
Attempts to communicate for an average amount of time for the network protocol being used. This value gives equal consideration to response time and correctness in determining whether a server is
running. This is the default value.
|
rpc_c_binding_max_timeout |
9 |
Attempts to communicate for the longest finite amount of time for the network protocol being used. This value favors correctness in determining whether a server is running over response time. |
rpc_c_binding_infinite_timeout |
10 |
Attempts to communicate forever. |
Note that connection-oriented RPC handles the time-out value differently from Datagram RPC. Because connection-oriented RPC is based upon a reliable transport layer, communications time-outs are not
as significant as they are under datagram protocol. When rpc_mgmt_set_com_timeout( ) is called on a binding using connection-oriented protocol, only the input argument
rpc_c_binding_infinite_timeout changes the binding's behavior. All other values are ignored.
Return Values No value is returned.
Errors
The following describes a partial list of errors that might be returned. Refer to the OSF DCE Problem Determination Guide for complete descriptions of all error messages.
rpc_s_ok Success.
rpc_s_invalid_binding Invalid binding handle.
rpc_s_invalid_timeout Invalid binding handle.
rpc_s_wrong_kind_of_binding Wrong kind of binding for operation.
Related Information Functions: rpc_mgmt_inq_com_timeout(3rpc)
|