Fonction MgmAddGroupMembershipEntry (mgm.h)
La fonction MgmAddGroupMembershipEntry avertit le gestionnaire de groupes de multidiffusion qu’il existe de nouveaux récepteurs pour les groupes spécifiés sur l’interface spécifiée. Les récepteurs peuvent restreindre l’ensemble des sources à partir desquelles ils doivent recevoir des données de multidiffusion en spécifiant une plage de sources.
Un protocole de routage multidiffusion appelle cette fonction lorsqu’il est averti qu’il existe des récepteurs pour un groupe de multidiffusion sur une interface. Le protocole doit appeler cette fonction afin que les données de multidiffusion puissent être transférées sur une interface.
Syntaxe
DWORD MgmAddGroupMembershipEntry(
[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 recevoir des données de multidiffusion. Spécifiez zéro pour recevoir les données de toutes les sources (un 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 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 recevoir des données. Spécifiez zéro pour recevoir 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 ajouter l’appartenance au groupe. Les données de multidiffusion pour les groupes spécifiés sont 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 lors de l’ajout de l’appartenance au groupe. Les valeurs autorisées sont :
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 |
---|---|
|
Impossible de terminer l’appel à cette fonction. |
|
Handle non valide pour le protocole. |
|
Mémoire insuffisante pour effectuer cette opération. |
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_JOIN_ALERT_CALLBACK pour informer d’autres protocoles de routage qu’il existe de nouveaux 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 |