Función MgmDeleteGroupMembershipEntry (mgm.h)

La función MgmDeleteGroupMembershipEntry notifica al administrador del grupo de multidifusión que no hay más receptores presentes para los grupos especificados en la interfaz especificada.

Un protocolo de enrutamiento de multidifusión llama a esta función después de recibir una notificación de que no hay más receptores para un grupo de multidifusión en una interfaz. El protocolo debe llamar a esta función para impedir que los datos de multidifusión se reenvíen a través de una interfaz.

Sintaxis

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

Parámetros

[in] hProtocol

Identificador del protocolo obtenido de una llamada anterior a MgmRegisterMProtocol.

[in] dwSourceAddr

Especifica la dirección de origen desde la que dejar de recibir datos de multidifusión. Especifique cero para dejar de 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 dejar de recibir datos de multidifusión.

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

[in] dwGroupAddr

Especifica el grupo de multidifusión para el que se detendrá la recepción de datos. Especifique cero para dejar de 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 (un receptor comodín).

[in] dwIfIndex

Especifica la interfaz en la que se va a eliminar la pertenencia a grupos. Los datos de multidifusión de los grupos especificados ya no se reenvieron 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. Entre los ejemplos de interfaces de punto a punto se incluyen 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.

En el caso de las interfaces de difusión (como interfaces Ethernet) o 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 quita la pertenencia al grupo. Los valores válidos son:

Value Significado
MGM_JOIN_STATE_FLAG
Quite 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
Quite la interfaz especificada de 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 realiza 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 un protocolo o la interfaz es propiedad de otro protocolo.
ERROR_NOT_FOUND
No se encontró la interfaz especificada.
 
 

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_PRUNE_ALERT_CALLBACK para notificar a otros protocolos de enrutamiento que no hay más receptores presentes 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

MgmAddGroupMembershipEntry

PMGM_PRUNE_ALERT_CALLBACK