rpc_mgmt_inq_if_ids- returns a vector of interface identifiers of interfaces a server offers
#include <dce/rpc.h>
void rpc_mgmt_inq_if_ids(
rpc_binding_handle_t binding,
rpc_if_id_vector_t **if_id_vector,
unsigned32 *status);
Input
- binding
- Specifies a binding handle. To receive interface identifiers from a remote application, the calling application specifies a server binding handle for that application. To receive interface information about itself, the application specifies NULL.
If the binding handle supplied refers to partially bound binding information and the binding information contains a nil object UUID, then this routine returns the rpc_s_binding_incomplete status code. To avoid this situation, the application can obtain a fully bound server binding handle by calling the rpc_ep_resolve_binding() routine.
Output
- if_id_vector
- Returns the address of an interface identifier vector.
- 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_binding_incomplete
Binding incomplete (no object ID and no endpoint).
- rpc_s_comm_failure
Communications failure.
- rpc_s_no_interfaces
No interfaces registered.
- rpc_s_mgmt_op_disallowed
Not authorised for operation.
In addition to the above values, status can return the value of status from an application-defined authorisation function. The prototype for such a function is defined in the authorization_fn argument description in
tagmref_rpc_mgmt_set_authorization_fn .
An application calls the rpc_mgmt_inq_if_ids() routine to obtain a vector of interface identifiers listing the interfaces registered by a server with the RPC run-time system.If a server has not registered any interfaces with the run-time system, this routine returns a rpc_s_no_interfaces status code and an if_id_vector argument value of NULL.
The binding handle supplied in the binding argument must refer to binding information that is fully bound or contains a non-nil object UUID. If the binding handle supplied refers to partially bound binding information that contains a nil object UUID, the routine returns the rpc_s_binding_incomplete status code.
The RPC run-time system allocates memory for the interface identifier vector. The application calls the rpc_if_id_vector_free() routine to release the memory used by this vector.
By default, the RPC run-time system allows all clients to remotely call this routine. To restrict remote calls of this routine, a server application supplies an authorisation function using the rpc_mgmt_set_authorization_fn() routine.
None.
rpc_ep_resolve_binding()
rpc_if_id_vector_free()
rpc_mgmt_set_authorization_fn()
rpc_server_register_if().
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 |