Interrogation des filtres de réception de fusion de paquets
Les pilotes et les applications surcharnés peuvent interroger des filtres de réception de fusion de paquets qui ont été téléchargés sur un pilote miniport en procédant comme suit :
Demandez une liste énumérée des filtres de réception sur le pilote miniport en émettant une demande de méthode OID de OID_RECEIVE_FILTER_ENUM_FILTERS. Pour plus d’informations, consultez Énumération des filtres de réception sur un pilote Miniport.
Demandez les paramètres du critère de test pour un filtre de réception sur le pilote miniport en émettant une demande de méthode OID de OID_RECEIVE_FILTER_PARAMETERS. Pour plus d’informations, consultez Interrogation des filtres de réception sur un pilote miniport
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 demande OID OID_RECEIVE_FILTER_SET_FILTER .
Énumération des filtres de réception sur un pilote miniport
Pour obtenir la liste de tous les filtres de réception de fusion de paquets qui ont été téléchargés sur un pilote miniport, les pilotes et les applications qui se superposent émettent une 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 NDIS_RECEIVE_FILTER_INFO_ARRAY .
Note Lorsque le pilote ou l’application qui se superpose initialise la structure NDIS_RECEIVE_FILTER_INFO_ARRAY , elle doit définir le membre QueueId sur NDIS_DEFAULT_RECEIVE_QUEUE_ID.
Après un retour réussi à partir de la demande de méthode OID, le membre InformationBuffer 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 :
Une structure NDIS_RECEIVE_FILTER_INFO_ARRAY qui spécifie une liste de filtres de réception actuellement configurés sur un pilote miniport.
Un tableau de NDIS_RECEIVE_FILTER_INFO structure un filtre de réception actuellement configuré sur un pilote miniport.
Interrogation des paramètres d’un filtre de réception sur un pilote Miniport
Pour obtenir les paramètres d’un filtre de réception de fusion de paquets spécifique qui a été téléchargé sur le pilote miniport, les pilotes ou applications excessivement émettent une demande de méthode OID de OID_RECEIVE_FILTER_PARAMETERS. Le membre InformationBuffer de la structure NDIS_OID_REQUEST contient un pointeur vers une structure NDIS_RECEIVE_FILTER_PARAMETERS . Le pilote ou l’application overlying initialise la structure NDIS_RECEIVE_FILTER_PARAMETERS en définissant le membre FilterId sur la valeur d’ID différente de zéro du filtre dont les paramètres doivent être retournés.
Note Le pilote qui se superpose a obtenu l’ID de filtre à partir d’une demande de méthode OID antérieure de OID_RECEIVE_FILTER_SET_FILTER ou OID_RECEIVE_FILTER_ENUM_FILTERS. L’application peut uniquement obtenir l’ID de filtre à partir d’une demande de méthode OID antérieure de OID_RECEIVE_FILTER_ENUM_FILTERS.
Après un retour réussi à partir de la demande de méthode OID, le membre InformationBuffer 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_PARAMETERS qui spécifie les paramètres d’un filtre de réception NDIS.
Tableau de structures NDIS_RECEIVE_FILTER_FIELD_PARAMETERS qui spécifie le critère de test de filtre pour un champ dans un en-tête de paquet réseau.