Partager via


OID_RECEIVE_FILTER_CLEAR_FILTER

Le surlysage des pilotes émet des requêtes de définition OID de OID_RECEIVE_FILTER_CLEAR_FILTER pour effacer un filtre de réception sur une carte réseau.

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

Remarques

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

La demande de jeu d’OID de OID_RECEIVE_FILTER_CLEAR_FILTER est obligatoire pour les pilotes miniports qui prennent en charge la fusion des paquets NDIS, SR-IOV ou VMQ.

Un pilote overlying, tel qu’un protocole NDIS ou un pilote de filtre, utilise la demande de jeu de OID_RECEIVE_FILTER_CLEAR_FILTER pour effacer un filtre précédemment défini. Seul le pilote qui définit le filtre de réception peut l’effacer.

Le pilote overlying efface un filtre de réception en définissant le FilterId membre de la structure NDIS_RECEIVE_FILTER_CLEAR_PARAMETERS sur l’identificateur du filtre. Le pilote a obtenu l’identificateur de filtre à partir d’une demande de méthode OID antérieure de OID_RECEIVE_FILTER_SET_FILTER.

Instructions supplémentaires pour la fusion des paquets NDIS

Le point suivant s’applique aux pilotes miniport et overlying qui prennent en charge la fusion des paquets NDIS :

  • Un pilote overlying doit effacer tous les filtres de réception qu’il a définis sur le pilote miniport avant qu’il ne se détache ou se détache du pilote.

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

Les points suivants s’appliquent aux pilotes miniport et overlying qui prennent en charge l’interface SR-IOV :

  • Un pilote overlying doit effacer tous les filtres qu’il définit sur une SR-IOV VPort avant de libérer le VPort. Le pilote surlysant doit également effacer tous les filtres qu’il définit sur le VPort par défaut avant de fermer sa liaison à la carte réseau.

  • Un pilote miniport ne doit pas indiquer de paquets sur un VPort nondefault s’il a terminé la requête OID de OID_RECEIVE_FILTER_CLEAR_FILTER pour effacer le dernier filtre sur le VPort.

    Remarque Un pilote miniport ne doit pas non plus indiquer les paquets sur un VPort nondefault s’il a effectué une demande OID de OID_NIC_SWITCH_DELETE_VPORT pour libérer le VPort.

Instructions supplémentaires pour l’interface VMQ

Les points suivants s’appliquent aux pilotes miniport et overlying qui prennent en charge l’interface VMQ :

  • Un pilote overlying doit effacer tous les filtres qu’il définit sur une file d’attente de réception VMQ avant de libérer la file d’attente. Le pilote overlying doit également effacer tous les filtres qu’il définit sur les files d’attente par défaut ou supprimer avant de fermer sa liaison à la carte réseau.

  • Un pilote miniport ne doit pas indiquer de paquets sur une file d’attente de réception s’il a terminé la requête OID de OID_RECEIVE_FILTER_CLEAR_FILTER pour effacer le dernier filtre sur la file d’attente de réception.

    Remarque Un pilote miniport ne doit pas non plus indiquer les paquets d’une file d’attente de réception s’il a terminé une requête OID de OID_RECEIVE_FILTER_FREE_QUEUE pour libérer la file d’attente de réception.

Retourner des codes d’état

La fonctionminiportdu pilote miniportOidRequest retourne l’une des valeurs suivantes pour cette requête :

Terme Description

NDIS_STATUS_SUCCESS

Le pilote miniport a terminé la requête avec succès.

NDIS_STATUS_PENDING

Le pilote miniport termine la requête de manière asynchrone. Une fois que le pilote miniport a terminé tout le traitement, il doit réussir la requête en appelant la fonction NdisMOidRequestComplete, en passant NDIS_STATUS_SUCCESS pour le paramètre Status.

NDIS_STATUS_NOT_ACCEPTED

L’adaptateur miniport a été supprimé.

NDIS retourne l’un des codes d’état suivants pour cette demande :

NDIS_STATUS_SUCCESS
Le filtre spécifié a été effacé avec succès.

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 requête OID de l’appelant une fois la demande terminée.

NDIS_STATUS_FILE_NOT_FOUND
L’identificateur de filtre n’est pas valide.

NDIS_STATUS_INVALID_LENGTH
La mémoire tampon d’informations est trop petite. NDIS définit le DATA. SET_INFORMATION. OctetsNeeded membre de la structure NDIS_OID_REQUEST à la taille de mémoire tampon minimale requise.

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_CLEAR_PARAMETERS

OID_NIC_SWITCH_DELETE_VPORT

OID_RECEIVE_FILTER_FREE_QUEUE

OID_RECEIVE_FILTER_SET_FILTER