structure GROUP_FILTER (ws2ipdef.h)

La structure GROUP_FILTER fournit des paramètres de filtrage multidiffusion pour les adresses IPv6 ou IPv4 de multidiffusion.

Syntaxe

typedef struct group_filter {
  ULONG               gf_interface;
  SOCKADDR_STORAGE    gf_group;
  MULTICAST_MODE_TYPE gf_fmode;
  ULONG               gf_numsrc;
  SOCKADDR_STORAGE    gf_slist[1];
} GROUP_FILTER, *PGROUP_FILTER;

Membres

gf_interface

Index d’interface de l’interface locale pour le groupe de multidiffusion à filtrer.

gf_group

Groupe d’adresses de multidiffusion qui doit être filtré. Il peut s’agir d’une adresse de multidiffusion IPv6 ou IPv4.

gf_fmode

Mode de filtre multidiffusion.

Ce membre peut être l’une des valeurs du type d’énumération MULTICAST_MODE_TYPE défini dans le fichier d’en-tête Ws2ipdef.h . Ce membre détermine si la liste des adresses IP du membre gf_numsrc doit être incluse ou exclue.

Valeur Signification
MCAST_INCLUDE
Le filtre contient une liste d’adresses IP à inclure.
MCAST_EXCLUDE
Le filtre contient une liste d’adresses IP à exclure.

gf_numsrc

Nombre d’entrées d’adresse source de filtre multidiffusion dans le membre gf_slist .

gf_slist[1]

Tableau de structures SOCKADDR_STORAGE spécifiant les adresses sources de multidiffusion à inclure ou à exclure. Ces adresses IP peuvent être des adresses IPv6 ou IPv4, mais elles doivent être de la même famille d’adresses (IPv6 ou IPv4) que l’adresse spécifiée dans le membre gf_group .

Remarques

La structure GROUP_FILTER est utilisée avec les adresses de multidiffusion IPv6 ou IPv4. La structure GROUP_FILTER est passée en tant qu’argument pour les IOCTL SIOCGMSFILTER et SIOCSMSFILTER .

La structure GROUP_FILTER et les structures associées utilisées pour la programmation multidiffusion sont basées sur les recommandations de l’IETF dans les sections 5 et 8.2 de la RFC 3768. Pour plus d’informations, consultez http://www.ietf.org/rfc/rfc3678.txt.

Sur Windows Vista et versions ultérieures, un ensemble d’options de socket sont disponibles pour la programmation multidiffusion qui prend en charge les adresses IPv6 et IPv4. Ces options de socket sont indépendantes des adresses IP et peuvent être utilisées sur IPv6 et IPv4. Ces options indépendantes de l’adresse IP utilisent les structures GROUP_REQ et GROUP_SOURCE_REQ et sont les options de socket préférées pour la programmation multidiffusion sur Windows Vista et versions ultérieures.

La fonction GetAdaptersAddresses peut être utilisée pour obtenir les informations d’index d’interface requises pour le membre gf_interface .

La structure GROUP_FILTER et les ioctls qui utilisent cette structure ne sont valides que sur les datagrammes et les sockets bruts (le type de socket doit être SOCK_DGRAM ou SOCK_RAW).

La structure GROUP_FILTER est définie dans le fichier d’en-tête Ws2ipdef.h qui est automatiquement inclus dans le fichier d’en-tête Ws2tcpip.h . Les fichiers d’en-tête Ws2ipdef.h ne doivent jamais être utilisés directement.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Aucun pris en charge
Serveur minimal pris en charge Windows Server 2008 [applications de bureau uniquement]
En-tête ws2ipdef.h (include Ws2tcpip.h)

Voir aussi

GROUP_REQ

GROUP_SOURCE_REQ

GetAdaptersAddresses

MULTICAST_MODE_TYPE

Programmation multidiffusion

SOCKADDR_STORAGE

Socket Options

ip_mreq

ip_msfilter

ipv6_mreq