MPR40_SERVICE_CHARACTERISTICS structure (stm.h)
The MPR_SERVICE_CHARACTERISTICS structure contains information used to register a routing protocol with the router manager.
Syntax
typedef struct _MPR40_SERVICE_CHARACTERISTICS {
DWORD dwVersion;
DWORD dwProtocolId;
DWORD fSupportedFunctionality;
PIS_SERVICE pfnIsService;
PDO_UPDATE_SERVICES pfnUpdateServices;
PCREATE_SERVICE_ENUMERATION_HANDLE pfnCreateServiceEnumerationHandle;
PENUMERATE_GET_NEXT_SERVICE pfnEnumerateGetNextService;
PCLOSE_SERVICE_ENUMERATION_HANDLE pfnCloseServiceEnumerationHandle;
PGET_SERVICE_COUNT pfnGetServiceCount;
PCREATE_STATIC_SERVICE pfnCreateStaticService;
PDELETE_STATIC_SERVICE pfnDeleteStaticService;
PBLOCK_CONVERT_SERVICES_TO_STATIC pfnBlockConvertServicesToStatic;
PBLOCK_DELETE_STATIC_SERVICES pfnBlockDeleteStaticServices;
PGET_FIRST_ORDERED_SERVICE pfnGetFirstOrderedService;
PGET_NEXT_ORDERED_SERVICE pfnGetNextOrderedService;
} MPR40_SERVICE_CHARACTERISTICS;
Members
dwVersion
On input, specifies the version of RRAS currently running.
On output, the routing protocol should specify the version of RRAS that it requires.
The symbol MS_ROUTER_VERSION in the header file Routprot.h is defined to be the RRAS version for a given implementation.
dwProtocolId
Specifies the routing protocol that the router manager requests the DLL to register. (A common name space is used for all protocol families.)
fSupportedFunctionality
On input, specifies the functionality that the router manager supports.
On output, the routing protocol should reset these flags to indicate the subset of functionality that it supports. If this routing protocol does not provide services, fSupportedFunctionality should be zero.
This parameter is one or more of the following values.
pfnIsService
Pointer to an implementation of the IsService function for this routing protocol.
pfnUpdateServices
pfnCreateServiceEnumerationHandle
Pointer to an implementation of the CreateServiceEnumerationHandle function for this routing protocol.
pfnEnumerateGetNextService
Pointer to an implementation of the EnumerateGetNextService function for this routing protocol.
pfnCloseServiceEnumerationHandle
Pointer to an implementation of the CloseServiceEnumerationHandle function for this routing protocol.
pfnGetServiceCount
Pointer to an implementation of the GetServiceCount function for this routing protocol.
pfnCreateStaticService
Pointer to an implementation of the CreateStaticService function for this routing protocol.
pfnDeleteStaticService
Pointer to an implementation of the DeleteStaticService function for this routing protocol.
pfnBlockConvertServicesToStatic
Pointer to an implementation of the BlockConvertServicesToStatic function for this routing protocol.
pfnBlockDeleteStaticServices
Pointer to an implementation of the BlockDeleteStaticServices function for this routing protocol.
pfnGetFirstOrderedService
Pointer to an implementation of the GetFirstOrderedService function for this routing protocol.
pfnGetNextOrderedService
Pointer to an implementation of the GetNextOrderedService function for this routing protocol.
Remarks
The members of this structure are pointers to Service Table Management functions implemented in the routing protocol DLL. The routing protocol fills in the address values for these pointers during a call to the RegisterProtocol function.
Only routing protocol DLLs that support services need to fill in the MPR_SERVICE_CHARACTERISTICS structure.
For a complete description of a particular function pointed to by one of the structure members, see the reference page for that function.
To use this structure, the user should add -DMPR50=1 to the compiler flags.
Requirements
Requirement | Value |
---|---|
Minimum supported client | None supported |
Minimum supported server | Windows 2000 Server [desktop apps only] |
Header | stm.h |