Compartir a través de


Función MgmAddGroupMembershipEntry (mgm.h)

La función MgmAddGroupMembershipEntry notifica al administrador del grupo de multidifusión que hay nuevos receptores para los grupos especificados en la interfaz especificada. Los receptores pueden restringir el conjunto de orígenes desde los que deben recibir datos de multidifusión especificando un intervalo de origen.

Un protocolo de enrutamiento de multidifusión llama a esta función cuando se notifica que hay receptores para un grupo de multidifusión en una interfaz. El protocolo debe llamar a esta función para que los datos de multidifusión se puedan reenviar a través de una interfaz.

Sintaxis

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

Parámetros

[in] hProtocol

Controle el protocolo obtenido de una llamada anterior a MgmRegisterMProtocol.

[in] dwSourceAddr

Especifica la dirección de origen desde la que se van a recibir datos de multidifusión. Especifique cero para recibir datos de todos los orígenes (un receptor comodín para un grupo); de lo contrario, especifique la dirección IP de la red de origen o de origen.

Para especificar un intervalo de direcciones de origen, especifique la red de origen mediante dwSourceAddr y especifique una máscara de subred mediante dwSourceMask.

[in] dwSourceMask

Especifica la máscara de subred que corresponde a dwSourceAddr. Los parámetros dwSourceAddr y dwSourceMask se usan juntos para definir un intervalo de orígenes desde los que se van a recibir datos de multidifusión.

Especifique cero para este parámetro si se especificó cero para dwSourceAddr (receptor con caracteres comodín).

[in] dwGroupAddr

Especifica el grupo de multidifusión para el que se van a recibir datos. Especifique cero para recibir todos los grupos (un receptor comodín); De lo contrario, especifique la dirección IP del grupo.

Para especificar un intervalo de direcciones de grupo, especifique la dirección de grupo mediante dwGroupAddr y especifique una máscara de subred mediante dwGroupMask.

[in] dwGroupMask

Especifica la máscara de subred que corresponde a dwGroupAddr. Los parámetros dwGroupAddr y dwGroupMask se usan juntos para definir un intervalo de grupos de multidifusión.

Especifique cero para este parámetro si se especificó cero para dwGroupAddr (receptor con caracteres comodín).

[in] dwIfIndex

Especifica la interfaz en la que se va a agregar la pertenencia al grupo. Los datos de multidifusión de los grupos especificados se reenviarán a través de esta interfaz.

[in] dwIfNextHopIPAddr

Especifica la dirección del próximo salto que corresponde al índice especificado por dwIfIndex. Los parámetros dwIfIndex y dwIfNextHopIPAddr identifican de forma única un próximo salto en interfaces de punto a punto. Una interfaz de punto a punto es una conexión en la que una interfaz se conecta a varias redes. Algunos ejemplos de interfaces de punto a punto son interfaces de acceso múltiple (NBMA) que no son de difusión y la interfaz interna en la que se conectan todos los clientes de acceso telefónico.

Para las interfaces de difusión (como las interfaces Ethernet) o las interfaces de punto a punto, que solo se identifican mediante el valor de dwIfIndex, especifique cero.

[in] dwFlags

Especifica cualquier procesamiento adicional que se debe realizar cuando se agrega la pertenencia al grupo. Los valores válidos son:

Value Significado
MGM_JOIN_STATE_FLAG
Agregue la pertenencia a grupos para el origen y el grupo especificados. Actualice las entradas de reenvío del grupo de origen especificado para reflejar este cambio en la pertenencia a grupos.
MGM_FORWARD_STATE
Agregue la interfaz especificada a la lista de interfaces salientes para la entrada de reenvío que corresponde al origen y grupo especificados.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es NO_ERROR.

Si se produce un error en la función, el valor devuelto es uno de los siguientes códigos de error.

Valor Significado
ERROR_CAN_NOT_COMPLETE
No se pudo completar la llamada a esta función.
ERROR_INVALID_PARAMETER
Identificador no válido para el protocolo.
ERROR_NOT_ENOUGH_MEMORY
No hay suficiente memoria para completar esta operación.
 
 

Comentarios

Esta versión de la API de MGM solo admite orígenes comodín o orígenes específicos, no un intervalo de orígenes. La misma restricción se aplica a los grupos, es decir, no se permiten intervalos de grupos.

Cuando se llama a esta función, el administrador de grupos de multidifusión puede invocar la devolución de llamada PMGM_JOIN_ALERT_CALLBACK para notificar a otros protocolos de enrutamiento que hay nuevos receptores para el grupo especificado.

Requisitos

Requisito Value
Cliente mínimo compatible No se admite ninguno
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado mgm.h
Library Rtm.lib
Archivo DLL Rtm.dll

Consulte también

MgmDeleteGroupMembershipEntry

PMGM_JOIN_ALERT_CALLBACK