VMS Help  —  DCE  DCE_RPC, Application Routines, rpc_server_use_all_protseqs
 NAME

   rpc_server_use_all_protseqs - Tells the RPC runtime to use all
                                 supported protocol sequences for
                                 receiving remote procedure calls

   Used by server applications.

 SYNOPSIS

   #include <dce/rpc.h>

   void rpc_server_use_all_protseqs( unsigned32 max_call_requests,
                                     unsigned32 *status );

 PARAMETERS

   Input

   max_call_requests
       Specifies the maximum number of concurrent remote procedure call
       requests that the server can accept.

       The RPC runtime 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.

       Use the value rpc_c_protseq_max_reqs_default to specify the
       default parameter value.

       Note that in this version of DCE RPC, any number you specify is
       replaced by the default value.

       Also, the rpc_server_listen() routine limits (according to its
       max_calls_exec parameter) the amount of concurrent remote
       procedure call execution.  See the rpc_server_listen
       reference page for more information.

   Output

   status
       Returns the status code from this routine.  This status code
       indicates whether the routine completed successfully or, if
       not, why not.  The possible status codes and their meanings
       are as follows:

       rpc_s_ok     Success.

       rpc_s_cant_create_socket
                    Cannot create socket.

       rpc_s_max_descs_exceeded
                    Exceeded maximum number of network descriptors.

       rpc_s_no_protseqs
                    No supported protocol sequences.

 DESCRIPTION

   The rpc_server_use_all_protseqs() routine registers all supported
   protocol sequences with the RPC runtime.  A server must register at
   least one protocol sequence with the RPC runtime to receive remote
   procedure call requests.

   For each protocol sequence registered by a server, the RPC runtime
   creates one or more binding handles.  Each binding handle contains a
   dynamic endpoint that the RPC runtime and operating system generated.

   The max_call_requests parameter allows you to specify the maximum
   number of concurrent remote procedure call requests the server
   handles.

   After registering protocol sequences, a server typically calls the
   following routines:

   rpc_server_inq_bindings()
                 Obtains a vector containing all of the server's binding
                 handles.

   rpc_ep_register()
                 Registers the binding handles with the local endpoint
                 map.

   rpc_ep_register_no_replace()
                 Registers the binding handles with the local endpoint
                 map.

   rpc_ns_binding_export()
                 Places the binding handles in the name service database
                 for access by any client.

   rpc_binding_vector_free()
                 Frees the vector of server binding handles.

   rpc_server_register_if()
                 Registers with the RPC runtime those interfaces that the
                 server offers.

   rpc_server_listen()
                 Enables the reception of remote procedure calls.

   To register protocol sequences selectively, a server calls one of the
   following routines:

   rpc_server_use_protseq()            rpc_server_use_all_protseqs_if()
   rpc_server_use_protseq_if()         rpc_server_use_protseq_ep()

   For an explanation of how a server can establish a client/server
   relationship without using the local endpoint map or the name service
   database, see the information on string bindings in the rpc_intro
   reference page.

 RETURN VALUES

   No value is returned.

 RELATED INFORMATION

   Functions: rpc_binding_from_string_binding
              rpc_binding_to_string_binding
              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_if
              rpc_server_use_protseq
              rpc_server_use_protseq_ep
              rpc_server_use_protseq_if
Close Help