|
|
/* * LCRpc.idl * * Author: BreenH * * The RPC interface to the licensing core. */
/* * LCRPC Interface Context Handle */
typedef [context_handle] void *LCRPC_HANDLE;
/* * Create some constants in the generated header. Note that the strings are * processed twice, therefore any "\" character, which should show up in the * header as "\\", needs to be written here as "\\\\". */
cpp_quote("//") cpp_quote("// Constants") cpp_quote("//") cpp_quote("") cpp_quote("#define LC_RPC_UUID L\"2f59a331-bf7d-48cb-9e5c-7c090d76e8b8\"") cpp_quote("#define LC_RPC_LRPC_EP L\"LcRpc\"") cpp_quote("#define LC_RPC_MAX_THREADS 4")
/* * LCRPC Interface */
[ uuid(2f59a331-bf7d-48cb-9e5c-7c090d76e8b8), version(1.0), pointer_default(unique), endpoint("ncalrpc:[LcRpc]") ]
interface LCRPC { // // To include headers into the interface, it is necessary to include // through a separate IDL file. //
import "lcimport.idl";
// // RPC Open and Close Server Functions //
BOOLEAN RpcLicensingOpenServer( [in] handle_t hBinding, [out] LCRPC_HANDLE *phServer, [out, ref] PLONG pStatus );
void RpcLicensingCloseServer( [in, out] LCRPC_HANDLE *phServer );
// // Policy Loading and Activation Functions //
BOOLEAN RpcLicensingLoadPolicy( [in] LCRPC_HANDLE hServer, [in] ULONG ulPolicyId, [out, ref] PLONG pStatus );
BOOLEAN RpcLicensingUnloadPolicy( [in] LCRPC_HANDLE hServer, [in] ULONG ulPolicyId, [out, ref] PLONG pStatus );
LONG RpcLicensingSetPolicy( [in] LCRPC_HANDLE hServer, [in] ULONG ulPolicyId, [out, ref] PLONG pNewPolicyStatus );
// // Administrative Functions //
BOOLEAN RpcLicensingGetAvailablePolicyIds( [in] LCRPC_HANDLE hServer, [out, size_is(,*pcPolicies)] PULONG *ppulPolicyIds, [out, ref] PULONG pcPolicies, [out, ref] PLONG pStatus );
BOOLEAN RpcLicensingGetPolicy( [in] LCRPC_HANDLE hServer, [out, ref] PULONG pulPolicyId, [out, ref] PLONG pStatus );
BOOLEAN RpcLicensingGetPolicyInformation( [in] LCRPC_HANDLE hServer, [in] ULONG ulPolicyId, [in, out, ref] PULONG pulVersion, [out, size_is(,*pcbPolicyInfo)] PCHAR *ppPolicyInfo, [in, out, ref] PULONG pcbPolicyInfo, [out, ref] PLONG pStatus );
BOOLEAN RpcLicensingDeactivateCurrentPolicy( [in] LCRPC_HANDLE hServer, [out, ref] PLONG pStatus ); }
|