OSF DCE Application Development Guide--Core Components
Using the DCE Serviceability Application Interface
{
if (! your_test_access(h))
*st = no_authorization_error;
else
/* operation is currently not implemented in library ... */
*st = svc_s_no_stats;
}
/* */
/* The table of slots is created by IDL from the service.idl */
/* file, src/dce/utils/svc/service.idl, the output of which */
/* is service.h. It’s then the job of the application that */
/* wishes to offer the remote operations to fill in the table */
/* with the implementations’ entry points. That’s what’s being */
/* done below. Typically the application simply interposes an */
/* appropriate ACL check between the entry into an implementation */
/* and the subsequent call to the "real" operation as implemented */
/* in the serviceability library. */
/* */
serviceability_v1_0_epv_t dce_svc_epv = {
hel_svc_set_route,
hel_svc_set_dbg_route,
hel_svc_set_dbg_levels,
hel_svc_inq_components,
hel_svc_inq_table,
hel_svc_inq_routings,
hel_svc_filter_ctl,
hel_svc_inq_stats
};
4.3.14.3 Registering and Exporting the Remote Interface
The following code fragments show how the remote serviceability interface could be
exported and registered by a hello_svc server. Note that only the steps that are closely or
directly related to exporting and registering the server’s and the serviceability remote
interface are shown. For a full example of how to get a DCE server application up and
running, see the .
The steps shown are the following:
1. Register interfaces with the RPC runtime
2. Request binding handles for the server interface from the RPC runtime
3. Request binding handles for the serviceabilty interface from the RPC runtime
124245 Tandem Computers Incorporated 4− 43