Partager via


OID_RECEIVE_FILTER_ENUM_FILTERS

Un pilote surlysant émet une demande de méthode OID de OID_RECEIVE_FILTER_ENUM_FILTERS pour obtenir la liste de tous les filtres configurés sur une carte réseau.

Le membre InformationBuffer de la structure NDIS_OID_REQUEST contient un pointeur vers une structure NDIS_RECEIVE_FILTER_INFO_ARRAY.

Après un retour réussi de la requête de méthode OID, le InformationBuffer membre de la structure NDIS_OID_REQUEST contient un pointeur vers une mémoire tampon. Cette mémoire tampon est mise en forme pour contenir les éléments suivants :

  • Structure NDIS_RECEIVE_FILTER_INFO_ARRAY qui spécifie une liste de filtres de réception actuellement configurés sur un pilote miniport.

  • Tableau de structures NDIS_RECEIVE_FILTER_INFO. Chaque structure spécifie les paramètres d’un filtre de réception actuellement configuré sur un pilote miniport.

Remarques

Les filtres de réception NDIS sont utilisés dans les interfaces NDIS suivantes :

Le surlysage des pilotes ou des applications émet des demandes de méthode OID de OID_RECEIVE_FILTER_ENUM_FILTERS pour énumérer les filtres de réception définis sur une carte réseau. Cela inclut les filtres de réception qui ont été définis sur un port virtuel SR-IOV (VPort) ou une file d’attente de réception VMQ.

Instructions supplémentaires pour l’interface de fusion des paquets NDIS

À compter de Windows Server 2012, la fusion des paquets NDIS prend uniquement en charge la file d’attente de réception par défaut d’une carte réseau.

Pour énumérer les filtres de réception de fusion de paquets, le pilote de superposition doit définir le QueueId membre de la structure NDIS_RECEIVE_FILTER_INFO_ARRAY sur NDIS_DEFAULT_RECEIVE_QUEUE_ID.

Instructions supplémentaires pour l’interface de SR-IOV

À compter de Windows Server 2012, l’interface SR-IOV prend uniquement en charge la file d’attente de réception par défaut d’un port virtuel (VPort).

Pour énumérer les filtres de réception VPort, le pilote de superposition doit définir le QueueId membre de la structure NDIS_RECEIVE_FILTER_INFO_ARRAY sur NDIS_DEFAULT_RECEIVE_QUEUE_ID.

Instructions supplémentaires pour l’interface VMQ

Un pilote surlysant peut émettre des requêtes de méthode OID de OID_RECEIVE_FILTER_ENUM_FILTERS pour énumérer les filtres de réception définis sur une file d’attente de réception VMQ. Lorsque le pilote surlysant initialise la structure NDIS_RECEIVE_FILTER_INFO_ARRAY, il définit le QueueId membre sur l’une des valeurs suivantes :

  • Valeur d’identificateur de file d’attente pour une file d’attente de réception non définie. Le pilote overlying a obtenu la valeur d’entrée de l’identificateur de file d’attente à partir d’une requête de méthode OID antérieure de OID_RECEIVE_FILTER_ALLOCATE_QUEUE ou d’une requête de requête OID de OID_RECEIVE_FILTER_ENUM_QUEUES.

  • Valeur d’identificateur de file d’attente de NDIS_DEFAULT_RECEIVE_QUEUE_ID, qui spécifie la file d’attente de réception par défaut.

Retourner des codes d’état

NDIS gère la demande de méthode OID de OID_RECEIVE_FILTER_ENUM_FILTERS pour les pilotes miniports et retourne l’un des codes d’état suivants :

NDIS_STATUS_SUCCESS
La demande s’est terminée avec succès. Le InformationBuffer pointe vers une structure NDIS_RECEIVE_FILTER_INFO_ARRAY.

NDIS_STATUS_PENDING
La requête est en attente d’achèvement. NDIS transmet le code d’état final et les résultats au gestionnaire d’achèvement de la demande OID de l’appelant une fois la demande terminée.

NDIS_STATUS_INVALID_LENGTH
La mémoire tampon d’informations était trop courte. NDIS définit la DATA. QUERY_INFORMATION. OctetsNeeded membre de la structure NDIS_OID_REQUEST à la taille de mémoire tampon minimale requise.

NDIS_STATUS_FAILURE
La demande a échoué pour d’autres raisons.

Exigences

Version

Pris en charge dans NDIS 6.20 et versions ultérieures.

En-tête

Ntddndis.h (include Ndis.h)

Voir aussi

NDIS_OID_REQUEST

NDIS_RECEIVE_FILTER_INFO

NDIS_RECEIVE_FILTER_INFO_ARRAY

OID_RECEIVE_FILTER_ALLOCATE_QUEUE

OID_RECEIVE_FILTER_ENUM_QUEUES

OID_RECEIVE_FILTER_SET_FILTER