Share via


Funzione MgmAddGroupMembershipEntry (mgm.h)

La funzione MgmAddGroupMembershipEntry notifica al gestore del gruppo multicast che sono presenti nuovi ricevitori per i gruppi specificati nell'interfaccia specificata. I ricevitori possono limitare il set di origini da cui devono ricevere dati multicast specificando un intervallo di origine.

Un protocollo di routing multicast chiama questa funzione quando viene notificata la disponibilità di ricevitori per un gruppo multicast in un'interfaccia. Il protocollo deve chiamare questa funzione in modo che i dati multicast possano essere inoltrati su un'interfaccia.

Sintassi

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
);

Parametri

[in] hProtocol

Gestire il protocollo ottenuto da una chiamata precedente a MgmRegisterMProtocol.

[in] dwSourceAddr

Specifica l'indirizzo di origine da cui ricevere dati multicast. Specificare zero per ricevere dati da tutte le origini (un ricevitore con caratteri jolly per un gruppo); in caso contrario, specificare l'indirizzo IP della rete di origine o di origine.

Per specificare un intervallo di indirizzi di origine, specificare la rete di origine usando dwSourceAddr e specificare una subnet mask usando dwSourceMask.

[in] dwSourceMask

Specifica la subnet mask che corrisponde a dwSourceAddr. I parametri dwSourceAddr e dwSourceMask vengono usati insieme per definire un intervallo di origini da cui ricevere dati multicast.

Specificare zero per questo parametro se è stato specificato zero per dwSourceAddr (un ricevitore con caratteri jolly).

[in] dwGroupAddr

Specifica il gruppo multicast per il quale ricevere i dati. Specificare zero per ricevere tutti i gruppi (ricevitore con caratteri jolly); in caso contrario, specificare l'indirizzo IP del gruppo.

Per specificare un intervallo di indirizzi di gruppo, specificare l'indirizzo del gruppo usando dwGroupAddr e specificare una subnet mask usando dwGroupMask.

[in] dwGroupMask

Specifica la subnet mask che corrisponde a dwGroupAddr. I parametri dwGroupAddr e dwGroupMask vengono usati insieme per definire un intervallo di gruppi multicast.

Specificare zero per questo parametro se è stato specificato zero per dwGroupAddr (ricevitore con caratteri jolly).

[in] dwIfIndex

Specifica l'interfaccia in cui aggiungere l'appartenenza al gruppo. I dati multicast per i gruppi specificati verranno inoltrati tramite questa interfaccia.

[in] dwIfNextHopIPAddr

Specifica l'indirizzo dell'hop successivo che corrisponde all'indice specificato da dwIfIndex. I parametri dwIfIndex e dwIfNextHopIPAddr identificano in modo univoco un hop successivo sulle interfacce da punto a più punti. Un'interfaccia da punto a punto è una connessione in cui un'interfaccia si connette a più reti. Esempi di interfacce da punto a più punti includono interfacce di accesso multiplo (NBMA) non broadcast e l'interfaccia interna in cui si connettono tutti i client di connessione remota.

Per le interfacce di trasmissione (ad esempio interfacce Ethernet) o interfacce da punto a punto, identificate solo dal valore di dwIfIndex, specificano zero.

[in] dwFlags

Specifica qualsiasi elaborazione aggiuntiva che deve essere eseguita quando viene aggiunta l'appartenenza al gruppo. I valori validi sono:

valore Significato
MGM_JOIN_STATE_FLAG
Aggiungere l'appartenenza al gruppo per l'origine e il gruppo specificati. Aggiornare le voci di inoltro per il gruppo di origine specificato in modo da riflettere questa modifica nell'appartenenza al gruppo.
MGM_FORWARD_STATE
Aggiungere l'interfaccia specificata all'elenco di interfacce in uscita per la voce di inoltro corrispondente all'origine e al gruppo specificati.

Valore restituito

Se la funzione ha esito positivo, il valore restituito viene NO_ERROR.

Se la funzione ha esito negativo, il valore restituito è uno dei codici di errore seguenti.

Valore Significato
ERROR_CAN_NOT_COMPLETE
Impossibile completare la chiamata a questa funzione.
ERROR_INVALID_PARAMETER
Handle non valido per il protocollo.
ERROR_NOT_ENOUGH_MEMORY
Memoria insufficiente per completare questa operazione.
 
 

Commenti

Questa versione dell'API MGM supporta solo origini con caratteri jolly o origini specifiche, non un'ampia gamma di origini. La stessa restrizione si applica ai gruppi, ovvero nessun intervallo di gruppi è consentito.

Quando questa funzione viene chiamata, gestione gruppi multicast può richiamare il callback PMGM_JOIN_ALERT_CALLBACK per notificare ad altri protocolli di routing che sono presenti nuovi ricevitori per il gruppo specificato.

Requisiti

Requisito Valore
Client minimo supportato Nessuno supportato
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione mgm.h
Libreria Rtm.lib
DLL Rtm.dll

Vedi anche

MgmDeleteGroupMembershipEntry

PMGM_JOIN_ALERT_CALLBACK