Partager via


Fonction MgmDeleteGroupMembershipEntry (mgm.h)

La fonction MgmDeleteGroupMembershipEntry avertit le gestionnaire de groupes de multidiffusion qu’il n’y a plus de récepteurs présents pour les groupes spécifiés sur l’interface spécifiée.

Un protocole de routage de multidiffusion appelle cette fonction après avoir été informé qu’il n’y a plus de récepteurs pour un groupe de multidiffusion sur une interface. Le protocole doit appeler cette fonction pour empêcher le transfert des données de multidiffusion sur une interface.

Syntaxe

DWORD MgmDeleteGroupMembershipEntry(
  [in] HANDLE hProtocol,
  [in] DWORD  dwSourceAddr,
  [in] DWORD  dwSourceMask,
  [in] DWORD  dwGroupAddr,
  [in] DWORD  dwGroupMask,
  [in] DWORD  dwIfIndex,
  [in] DWORD  dwIfNextHopIPAddr,
  [in] DWORD  dwFlags
);

Paramètres

[in] hProtocol

Gérez le protocole obtenu à partir d’un appel précédent à MgmRegisterMProtocol.

[in] dwSourceAddr

Spécifie l’adresse source à partir de laquelle arrêter la réception de données de multidiffusion. Spécifiez zéro pour arrêter la réception de données de toutes les sources (récepteur générique pour un groupe) ; sinon, spécifiez l’adresse IP du réseau source ou source.

Pour spécifier une plage d’adresses sources, spécifiez le réseau source à l’aide de dwSourceAddr et spécifiez un masque de sous-réseau à l’aide de dwSourceMask.

[in] dwSourceMask

Spécifie le masque de sous-réseau qui correspond à dwSourceAddr. Les paramètres dwSourceAddr et dwSourceMask sont utilisés ensemble pour définir une plage de sources à partir desquelles cesser de recevoir des données de multidiffusion.

Spécifiez zéro pour ce paramètre si zéro a été spécifié pour dwSourceAddr (récepteur de caractères génériques).

[in] dwGroupAddr

Spécifie le groupe de multidiffusion pour lequel arrêter la réception de données. Spécifiez zéro pour arrêter la réception de tous les groupes (un récepteur générique) ; sinon, spécifiez l’adresse IP du groupe.

Pour spécifier une plage d’adresses de groupe, spécifiez l’adresse de groupe à l’aide de dwGroupAddr et spécifiez un masque de sous-réseau à l’aide de dwGroupMask.

[in] dwGroupMask

Spécifie le masque de sous-réseau qui correspond à dwGroupAddr. Les paramètres dwGroupAddr et dwGroupMask sont utilisés ensemble pour définir une plage de groupes de multidiffusion.

Spécifiez zéro pour ce paramètre si zéro a été spécifié pour dwGroupAddr (récepteur de caractères génériques).

[in] dwIfIndex

Spécifie l’interface sur laquelle supprimer l’appartenance au groupe. Les données de multidiffusion pour les groupes spécifiés ne sont plus transférées sur cette interface.

[in] dwIfNextHopIPAddr

Spécifie l’adresse du tronçon suivant qui correspond à l’index spécifié par dwIfIndex. Les paramètres dwIfIndex et dwIfNextHopIPAddr identifient de manière unique un tronçon suivant sur les interfaces point à multipoint. Une interface de point à multipoint est une connexion par laquelle une interface se connecte à plusieurs réseaux. Parmi les exemples d’interfaces point à multipoint, citons les interfaces NBMA (Non Broadcast Multiple Access) et l’interface interne à laquelle tous les clients d’accès à distance se connectent.

Pour les interfaces de diffusion (telles que les interfaces Ethernet) ou point à point, qui sont identifiées uniquement par la valeur de dwIfIndex, spécifiez zéro.

[in] dwFlags

Spécifie tout traitement supplémentaire qui doit avoir lieu lorsque l’appartenance au groupe est supprimée. Les valeurs autorisées sont :

Valeur Signification
MGM_JOIN_STATE_FLAG
Supprimez l’appartenance au groupe pour la source et le groupe spécifiés. Mettez à jour toutes les entrées de transfert pour le groupe source spécifié afin de refléter cette modification dans l’appartenance au groupe.
MGM_FORWARD_STATE
Supprimez l’interface spécifiée de la liste des interfaces sortantes pour l’entrée de transfert qui correspond à la source et au groupe spécifiés.

Valeur retournée

Si la fonction réussit, la valeur de retour est NO_ERROR.

Si la fonction échoue, la valeur de retour est l’un des codes d’erreur suivants.

Valeur Signification
ERROR_CAN_NOT_COMPLETE
Impossible de terminer l’appel à cette fonction.
ERROR_INVALID_PARAMETER
Handle non valide pour un protocole, ou l’interface appartient à un autre protocole.
ERROR_NOT_FOUND
L’interface spécifiée est introuvable.
 
 

Remarques

Cette version de l’API MGM prend en charge uniquement les sources génériques ou des sources spécifiques, et non une plage de sources. La même restriction s’applique aux groupes (c’est-à-dire qu’aucune plage de groupes n’est autorisée).

Lorsque cette fonction est appelée, le gestionnaire de groupes de multidiffusion peut appeler le rappel PMGM_PRUNE_ALERT_CALLBACK pour avertir d’autres protocoles de routage qu’il n’y a plus de récepteurs pour le groupe spécifié.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Aucun pris en charge
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête mgm.h
Bibliothèque Rtm.lib
DLL Rtm.dll

Voir aussi

MgmAddGroupMembershipEntry

PMGM_PRUNE_ALERT_CALLBACK