Previous section.

CDE 1.1: Remote Procedure Call
Copyright © 1997 The Open Group

NAME

rpc_server_use_protseq_if- tells the RPC run-time system to use the specified protocol sequence combined with the endpoints in the interface specification for receiving remote procedure calls

SYNOPSIS

#include <dce/rpc.h>

void rpc_server_use_protseq_if( unsigned_char_t *protseq, unsigned32 max_call_requests, rpc_if_handle_t if_handle, unsigned32 *status);

PARAMETERS

Input

protseq
Specifies a protocol sequence to register with the RPC run-time system. Protocol Sequence Strings lists valid protocol sequence identifiers that may be used for this argument.

max_call_requests
Specifies the number of concurrent remote procedure call requests that the server is guaranteed to accept from the transport. The RPC run-time system allocates sufficient network resources to handle this number of concurrent calls.

The RPC run-time system guarantees that the server can accept at least this number of concurrent call requests. The actual number of these requests can be greater than the value of max_call_requests and can vary for each protocol sequence.

The value rpc_c_protseq_max_reqs_default specifies an implementation-dependent default value >=1.

Note:
The rpc_server_listen routine specifies a max_calls_exec argument that specifies the number of call threads the server will allocate to handle calls. Normally, the values of max_calls_exec and max_call_requests are the same. Servers are guaranteed to support the minimum of max_calls_exec and max_call_requests concurrent remote procedure calls. Applications should not rely on a server handling more than this number.

if_handle
Specifies an interface specification whose endpoint information is used in creating a binding for the protocol sequence specified in the protseq argument.

Output

status
Returns the status code from this routine. The status code indicates whether the routine completed successfully, or if not, why not.

Possible status codes and their meanings include:

rpc_s_ok
Success.

rpc_s_protseq_not_supported

Protocol sequence not supported on this host.

DESCRIPTION

The rpc_server_use_protseq_if() routine registers one protocol sequence with the RPC run-time system, including its endpoint address information as provided by the stub.

A server must register at least one protocol sequence with the RPC run-time system to receive remote procedure call requests. A server can call this routine multiple times to register additional protocol sequences.

The max_call_requests argument specifies the number of concurrent remote procedure call requests the server is guaranteed to handle.

Note:
To register all stub-specified protocol sequences, applications use the rpc_server_use_all_protseqs() routine. After calling rpc_server_use_protseq_if(), an application typically calls the following routines:

  • rpc_server_inq_bindings(), which obtains a vector containing all of the server's binding handles

  • rpc_ns_binding_export(), which places the binding handles in the name service database for access by any client

  • rpc_binding_vector_free(), which frees the vector of server binding handles

  • rpc_server_register_if(), which registers with the RPC run-time system those interfaces that the server offers

  • rpc_server_listen(), which enables the reception of remote procedure calls.

RETURN VALUE

None.

SEE ALSO


rpc_binding_vector_free()
rpc_ep_register()
rpc_ep_register_no_replace()
rpc_ns_binding_export()
rpc_server_inq_bindings()
rpc_server_listen()
rpc_server_register_if()
rpc_server_use_all_protseqs()
rpc_server_use_all_protseqs_if()
rpc_server_use_protseq()
rpc_server_use_protseq_ep().

Please note that the html version of this specification may contain formatting aberrations. The definitive version is available as an electronic publication on CD-ROM from The Open Group.

Contents Next section Index