Énumération des filtres de réception sur un port virtuel
Une fois qu’un port virtuel (VPort) est créé sur le commutateur de carte réseau de la carte réseau, les pilotes et les applications utilisateur peuvent effectuer les opérations suivantes :
Énumérez les paramètres des filtres de réception sur un VPort.
Pour plus d’informations, consultez Énumération des filtres de réception.
Interrogez les paramètres d’un filtre de réception spécifique.
Pour plus d’informations, consultez Interrogation d’un filtre de réception spécifique.
Pour plus d’informations sur la création d’un port virtuel, consultez Création d’un port virtuel.
Énumération des filtres de réception
Pour obtenir la liste de tous les filtres de réception définis sur un port virtuel (VPort) d’un commutateur de carte réseau, les pilotes et les applications sur-mentent peuvent émettre des demandes de méthode d’identificateur d’objet (OID) de OID_RECEIVE_FILTER_ENUM_FILTERS.
Le membre InformationBuffer de la structure NDIS_OID_REQUEST contient initialement un pointeur vers une structure NDIS_RECEIVE_FILTER_INFO_ARRAY .
Avant que le pilote ou l’application utilisateur excessive n’émet cette demande de méthode OID, elle doit initialiser une structure NDIS_RECEIVE_FILTER_INFO_ARRAY et définir les membres de cette structure de la manière suivante :
Le membre QueueId doit être défini sur NDIS_DEFAULT_RECEIVE_QUEUE_ID.
Le membre VPortId doit être défini sur l’identificateur associé au VPort. Le pilote qui se superpose obtient l’identificateur VPort de l’une des manières suivantes :
À partir d’une précédente demande de méthode OID de OID_NIC_SWITCH_CREATE_VPORT.
À partir d’une précédente demande de méthode OID de OID_NIC_SWITCH_ENUM_VPORTS.
Note Ce membre est valide uniquement si le pilote ou l’application définit l’indicateur NDIS_RECEIVE_FILTER_INFO_ARRAY_VPORT_ID_SPECIFIED dans le membre Indicateurs . Si cet indicateur n’est pas défini, des filtres de réception qui ont été définis sur chaque VPort sur le commutateur de carte réseau sont retournés.
Après un retour réussi de la demande de méthode OID de OID_RECEIVE_FILTER_ENUM_FILTERS, le membre InformationBuffer de la structure NDIS_OID_REQUEST contient un pointeur vers une structure de NDIS_RECEIVE_FILTER_INFO_ARRAY mise à jour qui est suivie d’une ou de plusieurs structures NDIS_RECEIVE_FILTER_INFO . Chaque structure NDIS_RECEIVE_FILTER_INFO spécifie l’identificateur unique du filtre de réception défini sur le VPort spécifié.
Interrogation d’un filtre de réception spécifique
Les pilotes ou applications excessivement peuvent émettre une demande de méthode OID de OID_RECEIVE_FILTER_PARAMETERS pour obtenir les paramètres d’un filtre spécifique sur un VPort.
Le membre InformationBuffer de la structure NDIS_OID_REQUEST contient initialement un pointeur vers une structure NDIS_RECEIVE_FILTER_PARAMETERS .
Avant que le pilote ou l’application utilisateur excessivement n’émet cette demande de méthode OID, elle doit initialiser une structure NDIS_RECEIVE_FILTER_PARAMETERS et définir les membres de cette structure de la manière suivante :
Le membre FilterId doit être défini sur la valeur d’identificateur différente de zéro du filtre dont les paramètres doivent être retournés.
Note Le pilote overlying a obtenu l’identificateur de filtre à partir d’une demande de méthode OID antérieure de OID_RECEIVE_FILTER_SET_FILTER ou de OID_RECEIVE_FILTER_ENUM_FILTERS. L’application peut obtenir l’identificateur de filtre uniquement à partir d’une demande de méthode OID antérieure de OID_RECEIVE_FILTER_ENUM_FILTERS.
Le membre QueueId doit être défini sur NDIS_DEFAULT_RECEIVE_QUEUE_ID.
Le membre VPortId doit être défini sur l’identificateur associé au VPort. Le pilote qui se superpose obtient l’identificateur VPort de l’une des manières suivantes :
À partir d’une précédente demande de méthode OID de OID_NIC_SWITCH_CREATE_VPORT.
À partir d’une précédente demande de méthode OID de OID_NIC_SWITCH_ENUM_VPORTS.
NDIS gère les requêtes OID OID_RECEIVE_FILTER_ENUM_FILTERS et OID_RECEIVE_FILTER_PARAMETERS méthode pour les pilotes miniport. NDIS a obtenu les informations d’un cache interne des données qu’il a reçues de la requête OID OID_RECEIVE_FILTER_SET_FILTER .