RegisterProtocol

[This is preliminary documentation and subject to change.]

The RegisterProtocol function registers the routing protocol with the router manager. It also informs the router manager what functionality the routing protocol supports.

DWORD RegisterProtocol (
    PMPR_ROUTING_CHARACTERISTICS   pRoutingChar,
    PMPR_SERVICE_CHARACTERISTICS   pServiceChar
);
 

Parameters

pRoutingChar,
Pointer to an MPR_ROUTING_CHARACTERISTICS structure. See the reference page for this structure for more information on how to use it with the RegisterProtocol function.
pServiceChar
Pointer to an MPR_SERVICE_CHARACTERISTICS structure. See the reference page for this structure for more information on how to use it with the RegisterProtocol function.

Return Values

NO_ERROR
The routing protocol agreed to register with the router manager.
ERROR_NOT_SUPPORTED
The routing protocol refused to register with the router manager.

Remarks

All routing protocol DLLs must fill in values for the MPR_ROUTING_CHARACTERISTICS structure.

Routing protocol DLLs that provide services must fill in values for the MPR_SERVICE_CHARACTERISTICS structure. If a routing protocol DLL does not provide services, it should fill in zero for the fSupportedFunctionality member of this structure, but need not fill in values for the other members.

Routing protocols are implemented in user-mode DLLs. A single DLL may implement multiple routing protocols. Therefore, router manager may call RegisterProtocol multiple times, once for each routing protocol implemented in the DLL.

QuickInfo

  Windows NT: Use version 5.0 and later.
  Windows: Unsupported.
  Windows CE: Unsupported.
  Header: Declared in routprot.h.
  Import Library: user-defined.

See Also

MPR_ROUTING_CHARACTERISTICS, MPR_SERVICE_CHARACTERISTICS, RegisterProtocol Sample