mgm.h header

This header is used by Routing and Remote Access Service. For more information, see:

mgm.h contains the following programming interfaces:

Functions

 
MgmAddGroupMembershipEntry

The MgmAddGroupMembershipEntry function notifies the multicast group manager that there are new receivers for the specified groups on the specified interface.
MgmDeleteGroupMembershipEntry

The MgmDeleteGroupMembershipEntry function notifies the multicast group manager that there are no more receivers present for the specified groups on the specified interface.
MgmDeRegisterMProtocol

The MgmDeRegisterMProtocol function deregisters a client handle obtained from a call to MgmRegisterMProtocol.
MgmGetFirstMfe

The MgmGetFirstMfe function retrieves MFEs starting at the beginning of the MFE list.
MgmGetFirstMfeStats

The MgmGetFirstMfeStats function retrieves MFE statistics starting at the beginning of the MFE list.
MgmGetMfe

The MgmGetMfe function retrieves a specific MFE.
MgmGetMfeStats

The MgmGetMfeStats function retrieves the statistics for a specific MFE. The statistics returned include the packets received, bytes received, and the packets forwarded on each outgoing interface.
MgmGetNextMfe

The MgmGetNextMfe function retrieves one or more MFEs.
MgmGetNextMfeStats

The MgmGetNextMfeStats function retrieves one or more sets of MFE statistics.
MgmGetProtocolOnInterface

The MgmGetProtocolOnInterface function retrieves the protocol ID of the multicast routing protocol that owns the specified interface.
MgmGroupEnumerationEnd

The MgmGroupEnumerationEnd function releases the specified enumeration handle that was obtained from a previous call to MgmGroupEnumerationStart.
MgmGroupEnumerationGetNext

The MgmGroupEnumerationGetNext function retrieves the next set of group entries. The information that is returned by this function is a list of groups joined and the sources requested, if any.
MgmGroupEnumerationStart

The MgmGroupEnumerationStart function obtains an enumeration handle that is later used to obtain the list of groups that have been joined. After the client obtains the handle, it should use the MgmGroupEnumerationGetNext function to enumerate the groups.
MgmRegisterMProtocol

The MgmRegisterMProtocol function is used by clients to register with the multicast group manager.
MgmReleaseInterfaceOwnership

The MgmReleaseInterfaceOwnership function is used by a client to relinquish ownership of an interface. When this function is called, all MFEs maintained by the multicast group manager on behalf of the client and for the specified interface are deleted.
MgmSetMfe

The MgmSetMfe function changes the upstream neighbor for an MFE. An MFE contains the information about which interface is receiving and which interfaces are forwarding multicast data.
MgmTakeInterfaceOwnership

The MgmTakeInterfaceOwnership function is called by a client (such as a routing protocol) when it is enabled on an interface.

Callback functions

 
PMGM_CREATION_ALERT_CALLBACK

The PMGM_CREATION_ALERT_CALLBACK callback is a call into a routing protocol. This call determines the subset of interfaces owned by the routing protocol on which a multicast packet from a new source should be forwarded.
PMGM_DISABLE_IGMP_CALLBACK

The PMGM_DISABLE_IGMP_CALLBACK callback is a call into IGMP to notify it that a routing protocol is taking or releasing ownership of an interface on which IGMP is enabled.
PMGM_ENABLE_IGMP_CALLBACK

The PMGM_ENABLE_IGMP_CALLBACK callback is a call into IGMP to notify it that a routing protocol has finished taking or releasing ownership of an interface.
PMGM_JOIN_ALERT_CALLBACK

The PMGM_JOIN_ALERT_CALLBACK callback is a call into a routing protocol to notify the protocol that new receivers are present for one or more groups on interfaces that are owned by other routing protocols.
PMGM_LOCAL_JOIN_CALLBACK

The PMGM_LOCAL_JOIN_CALLBACK callback is a call into a routing protocol to notify the protocol that IGMP has detected new receivers for a group on an interface that is currently owned by the routing protocol.
PMGM_LOCAL_LEAVE_CALLBACK

The PMGM_LOCAL_LEAVE_CALLBACK callback is a call into a routing protocol to notify the routing protocol that the IGMP has detected that it no longer has receivers for a group on an interface that is currently owned by the routing protocol.
PMGM_PRUNE_ALERT_CALLBACK

The PMGM_PRUNE_ALERT_CALLBACK callback is a call into a routing protocol to notify the protocol that receivers are no longer present on interfaces owned by other routing protocols.
PMGM_RPF_CALLBACK

The PMGM_RPF_CALLBACK callback is a call into a routing protocol to determine if a given packet was received on the correct interface.
PMGM_WRONG_IF_CALLBACK

The PMGM_WRONG_IF_CALLBACK is a call into a routing protocol to notify the protocol that a packet has been received from the specified source and for the specified group on the wrong interface.

Structures

 
MGM_IF_ENTRY

The MGM_IF_ENTRY structure describes a router interface.
ROUTING_PROTOCOL_CONFIG

The ROUTING_PROTOCOL_CONFIG structure describes the routing protocol configuration information that is passed to the multicast group manager when a protocol registers with the multicast group manager.
SOURCE_GROUP_ENTRY

The SOURCE_GROUP_ENTRY structure describes the entry returned by the group enumeration function MgmGroupEnumerationGetNext.

Enumerations

 
MGM_ENUM_TYPES

The MGM_ENUM_TYPES enumeration lists the types of group enumerations that the multicast group manager uses. This structure is used by the MgmGroupEnumerationStart function.