424 lines
14 KiB
Plaintext
424 lines
14 KiB
Plaintext
/********************************************************************/
|
|
/** Copyright(c) 1991 Microsoft Corporation. **/
|
|
/********************************************************************/
|
|
|
|
//***
|
|
//
|
|
// Filename: dimsvc.idl
|
|
//
|
|
// Description: Contains the RDimAdmir (DIM Remote) RPC interface
|
|
// specification for the API associated with the DIM Service.
|
|
// Also contains the RPC specific data structures for
|
|
// these APIs.
|
|
//
|
|
// History: June 11,1995. NarenG Created original version.
|
|
//
|
|
|
|
|
|
//
|
|
// Interface Attributes
|
|
//
|
|
|
|
[
|
|
uuid(8f09f000-b7ed-11ce-bbd2-00001a181cad),
|
|
version(0.0),
|
|
pointer_default(unique)
|
|
]
|
|
|
|
|
|
interface dimsvc
|
|
{
|
|
|
|
import "import.idl";
|
|
|
|
typedef handle_t DIM_HANDLE;
|
|
|
|
//
|
|
// Generic information container
|
|
//
|
|
|
|
typedef struct _DIM_INFORMATION_CONTAINER
|
|
{
|
|
DWORD dwBufferSize;
|
|
[size_is(dwBufferSize)] LPBYTE pBuffer;
|
|
|
|
} DIM_INFORMATION_CONTAINER, *PDIM_INFORMATION_CONTAINER;
|
|
|
|
DWORD
|
|
RMprAdminServerGetInfo (
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwLevel,
|
|
[out] PDIM_INFORMATION_CONTAINER pInfoStruct
|
|
);
|
|
|
|
//
|
|
// Connection management APIs
|
|
//
|
|
|
|
|
|
DWORD
|
|
RRasAdminConnectionEnum (
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwLevel,
|
|
[in,out] PDIM_INFORMATION_CONTAINER pInfoStruct,
|
|
[in] DWORD dwPreferedMaximumLength,
|
|
[out] LPDWORD lpdwEntriesRead,
|
|
[out] LPDWORD lpdwTotalEntries,
|
|
[in,out,unique] LPDWORD lpdwResumeHandle
|
|
);
|
|
|
|
DWORD
|
|
RRasAdminConnectionGetInfo (
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwLevel,
|
|
[in] DWORD hDimConnection,
|
|
[out] PDIM_INFORMATION_CONTAINER pInfoStruct
|
|
);
|
|
|
|
DWORD
|
|
RRasAdminConnectionClearStats (
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD hDimConnection
|
|
);
|
|
|
|
//
|
|
// Port management APIs
|
|
//
|
|
|
|
DWORD
|
|
RRasAdminPortEnum (
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwLevel,
|
|
[in] DWORD hRasConnection,
|
|
[in,out] PDIM_INFORMATION_CONTAINER pInfoStruct,
|
|
[in] DWORD dwPreferedMaximumLength,
|
|
[out] LPDWORD lpdwEntriesRead,
|
|
[out] LPDWORD lpdwTotalEntries,
|
|
[in,out,unique] LPDWORD lpdwResumeHandle
|
|
);
|
|
|
|
DWORD
|
|
RRasAdminPortGetInfo (
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwLevel,
|
|
[in] DWORD hPort,
|
|
[out] PDIM_INFORMATION_CONTAINER pInfoStruct
|
|
);
|
|
|
|
DWORD
|
|
RRasAdminPortClearStats (
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD hPort
|
|
);
|
|
|
|
DWORD
|
|
RRasAdminPortReset (
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD hPort
|
|
);
|
|
|
|
DWORD
|
|
RRasAdminPortDisconnect (
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD hPort
|
|
);
|
|
|
|
//
|
|
// Interface management APIs
|
|
//
|
|
|
|
typedef struct _DIM_INTERFACE_CONTAINER
|
|
{
|
|
DWORD fGetInterfaceInfo;
|
|
DWORD dwInterfaceInfoSize;
|
|
[size_is(dwInterfaceInfoSize)] LPBYTE pInterfaceInfo;
|
|
|
|
DWORD fGetGlobalInfo;
|
|
DWORD dwGlobalInfoSize;
|
|
[size_is(dwGlobalInfoSize)] LPBYTE pGlobalInfo;
|
|
|
|
} DIM_INTERFACE_CONTAINER, *PDIM_INTERFACE_CONTAINER;
|
|
|
|
DWORD
|
|
RRouterInterfaceTransportSetGlobalInfo(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwTransportId,
|
|
[in] PDIM_INTERFACE_CONTAINER pInfoStruct
|
|
);
|
|
|
|
DWORD
|
|
RRouterInterfaceTransportGetGlobalInfo(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwTransportId,
|
|
[in,out] PDIM_INTERFACE_CONTAINER pInfoStruct
|
|
);
|
|
|
|
DWORD
|
|
RRouterInterfaceGetHandle(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in,string] LPWSTR lpwsInterfaceName,
|
|
[in,out] LPDWORD phInterface,
|
|
[in] DWORD fIncludeClientInterfaces
|
|
);
|
|
|
|
DWORD
|
|
RRouterInterfaceCreate(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwLevel,
|
|
[in] PDIM_INFORMATION_CONTAINER pInfoStruct,
|
|
[in,out] LPDWORD phInterface
|
|
);
|
|
|
|
DWORD
|
|
RRouterInterfaceGetInfo(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwLevel,
|
|
[in,out] PDIM_INFORMATION_CONTAINER pInfoStruct,
|
|
[in] DWORD hInterface
|
|
);
|
|
|
|
DWORD
|
|
RRouterInterfaceSetInfo(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwLevel,
|
|
[in] PDIM_INFORMATION_CONTAINER pInfoStruct,
|
|
[in] DWORD hInterface
|
|
);
|
|
|
|
DWORD
|
|
RRouterInterfaceDelete(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD hInterface
|
|
);
|
|
|
|
DWORD
|
|
RRouterInterfaceTransportRemove(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD hInterface,
|
|
[in] DWORD dwTransportId
|
|
);
|
|
|
|
|
|
DWORD
|
|
RRouterInterfaceTransportAdd(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD hInterface,
|
|
[in] DWORD dwTransportId,
|
|
[in] PDIM_INTERFACE_CONTAINER pInfoStruct
|
|
);
|
|
|
|
DWORD
|
|
RRouterInterfaceTransportGetInfo(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD hInterface,
|
|
[in] DWORD dwTransportId,
|
|
[in,out] PDIM_INTERFACE_CONTAINER pInfoStruct
|
|
);
|
|
|
|
DWORD
|
|
RRouterInterfaceTransportSetInfo(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD hInterface,
|
|
[in] DWORD dwTransportId,
|
|
[in] PDIM_INTERFACE_CONTAINER pInfoStruct
|
|
);
|
|
|
|
DWORD
|
|
RRouterInterfaceEnum (
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwLevel,
|
|
[in,out] PDIM_INFORMATION_CONTAINER pInfoStruct,
|
|
[in] DWORD dwPreferedMaximumLength,
|
|
[out] LPDWORD lpdwEntriesRead,
|
|
[out] LPDWORD lpdwTotalEntries,
|
|
[in,out,unique] LPDWORD lpdwResumeHandle
|
|
);
|
|
|
|
DWORD
|
|
RRouterInterfaceConnect(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD hInterface,
|
|
[in] ULONG_PTR hEvent,
|
|
[in] DWORD fBlocking,
|
|
[in] DWORD dwCallersProcessId
|
|
);
|
|
|
|
DWORD
|
|
RRouterInterfaceDisconnect(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD hInterface
|
|
);
|
|
|
|
DWORD
|
|
RRouterInterfaceUpdateRoutes(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD hInterface,
|
|
[in] DWORD dwTransportId,
|
|
[in] ULONG_PTR hEvent,
|
|
[in] DWORD dwClientProcessId
|
|
);
|
|
|
|
DWORD
|
|
RRouterInterfaceQueryUpdateResult(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD hInterface,
|
|
[in] DWORD dwTransportId,
|
|
[out] LPDWORD pUpdateResult
|
|
);
|
|
|
|
DWORD
|
|
RRouterInterfaceUpdatePhonebookInfo(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD hInterface
|
|
);
|
|
|
|
//
|
|
// MIB APIs
|
|
//
|
|
|
|
typedef struct _DIM_MIB_ENTRY_CONTAINER
|
|
{
|
|
DWORD dwMibInEntrySize;
|
|
[size_is(dwMibInEntrySize)] LPBYTE pMibInEntry;
|
|
|
|
DWORD dwMibOutEntrySize;
|
|
[size_is(dwMibOutEntrySize)] LPBYTE pMibOutEntry;
|
|
|
|
} DIM_MIB_ENTRY_CONTAINER, *PDIM_MIB_ENTRY_CONTAINER;
|
|
|
|
DWORD
|
|
RMIBEntryCreate(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwPid,
|
|
[in] DWORD dwRoutingPid,
|
|
[in] PDIM_MIB_ENTRY_CONTAINER pInfoStuct
|
|
);
|
|
|
|
DWORD
|
|
RMIBEntryDelete(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwPid,
|
|
[in] DWORD dwRoutingPid,
|
|
[in] PDIM_MIB_ENTRY_CONTAINER pInfoStuct
|
|
);
|
|
|
|
DWORD
|
|
RMIBEntrySet(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwPid,
|
|
[in] DWORD dwRoutingPid,
|
|
[in] PDIM_MIB_ENTRY_CONTAINER pInfoStuct
|
|
);
|
|
|
|
DWORD
|
|
RMIBEntryGet(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwPid,
|
|
[in] DWORD dwRoutingPid,
|
|
[in,out] PDIM_MIB_ENTRY_CONTAINER pInfoStuct
|
|
);
|
|
|
|
DWORD
|
|
RMIBEntryGetFirst(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwPid,
|
|
[in] DWORD dwRoutingPid,
|
|
[in,out] PDIM_MIB_ENTRY_CONTAINER pInfoStuct
|
|
);
|
|
|
|
DWORD
|
|
RMIBEntryGetNext(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwPid,
|
|
[in] DWORD dwRoutingPid,
|
|
[in,out] PDIM_MIB_ENTRY_CONTAINER pInfoStuct
|
|
);
|
|
|
|
DWORD
|
|
RMIBGetTrapInfo(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwPid,
|
|
[in] DWORD dwRoutingPid,
|
|
[in,out] PDIM_MIB_ENTRY_CONTAINER pInfoStuct
|
|
);
|
|
|
|
DWORD
|
|
RMIBSetTrapInfo(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwPid,
|
|
[in] DWORD dwRoutingPid,
|
|
[in] ULONG_PTR hEvent,
|
|
[in] DWORD dwCurrentProcessId,
|
|
[in,out] PDIM_MIB_ENTRY_CONTAINER pInfoStuct
|
|
);
|
|
|
|
DWORD
|
|
RRasAdminConnectionNotification(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD fRegister,
|
|
[in] DWORD dwClientProcessId,
|
|
[in] ULONG_PTR hEventNotification
|
|
);
|
|
|
|
DWORD
|
|
RRasAdminSendUserMessage(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD hDimConnection,
|
|
[in,string] LPWSTR lpwszMessage
|
|
);
|
|
|
|
DWORD
|
|
RRouterDeviceEnum(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwLevel,
|
|
[in,out] PDIM_INFORMATION_CONTAINER pInfoStruct,
|
|
[in,out] LPDWORD lpdwTotalEntries
|
|
);
|
|
|
|
DWORD
|
|
RRouterInterfaceTransportCreate(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwTransportId,
|
|
[in,string] LPWSTR lpwsTransportName,
|
|
[in] PDIM_INTERFACE_CONTAINER pInfoStruct,
|
|
[in,string] LPWSTR lpwsDLLPath
|
|
);
|
|
|
|
DWORD
|
|
RRouterInterfaceDeviceGetInfo(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwLevel,
|
|
[in,out] PDIM_INFORMATION_CONTAINER pInfoStruct,
|
|
[in] DWORD dwIndex,
|
|
[in] DWORD hInterface
|
|
);
|
|
|
|
DWORD
|
|
RRouterInterfaceDeviceSetInfo(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwLevel,
|
|
[in] PDIM_INFORMATION_CONTAINER pInfoStruct,
|
|
[in] DWORD dwIndex,
|
|
[in] DWORD hInterface
|
|
);
|
|
|
|
DWORD
|
|
RRouterInterfaceSetCredentialsEx(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwLevel,
|
|
[in] PDIM_INFORMATION_CONTAINER pInfoStruct,
|
|
[in] DWORD hInterface
|
|
);
|
|
|
|
DWORD
|
|
RRouterInterfaceGetCredentialsEx(
|
|
[in] DIM_HANDLE hDimServer,
|
|
[in] DWORD dwLevel,
|
|
[in,out] PDIM_INFORMATION_CONTAINER pInfoStruct,
|
|
[in] DWORD hInterface
|
|
);
|
|
|
|
}
|
|
|
|
|