Abfragen von Paketen für die Zusammenführung von Empfangsfiltern
Überlastende Treiber und Anwendungen können paketverknend empfangene Empfangsfilter abfragen, die auf einen Miniporttreiber heruntergeladen wurden, indem Sie die folgenden Schritte ausführen:
Fordern Sie eine aufgezählte Liste der Empfangsfilter für den Miniporttreiber an, indem Sie eine OID-Methodenanforderung von OID_RECEIVE_FILTER_ENUM_FILTERS. Weitere Informationen finden Sie unter Auflisten der Empfangsfilter für einen Miniporttreiber.
Fordern Sie die Testkriteriumparameter für einen Empfangsfilter für den Miniporttreiber an, indem Sie eine OID-Methodenanforderung von OID_RECEIVE_FILTER_PARAMETERS. Weitere Informationen finden Sie unter Abfragen der Empfangsfilter auf einem Miniporttreiber.
NDIS verarbeitet die OID_RECEIVE_FILTER_ENUM_FILTERS - und OID_RECEIVE_FILTER_PARAMETERS Methoden-OID-Anforderungen für Miniporttreiber. NDIS hat die Informationen aus einem internen Cache der Daten abgerufen, die es aus der OID_RECEIVE_FILTER_SET_FILTER OID-Anforderung empfangen hat.
Auflisten der Empfangsfilter auf einem Miniporttreiber
Um eine Liste aller Paket-Zusammenführungs-Empfangsfilter zu erhalten, die auf einen Miniporttreiber heruntergeladen wurden, geben überlastende Treiber und Anwendungen eine OID-Methodenanforderung von OID_RECEIVE_FILTER_ENUM_FILTERS aus. Das InformationBuffer-Element der NDIS_OID_REQUEST-Struktur enthält einen Zeiger auf eine NDIS_RECEIVE_FILTER_INFO_ARRAY-Struktur .
Hinweis Wenn der überlastende Treiber oder die anwendung die NDIS_RECEIVE_FILTER_INFO_ARRAY-Struktur initialisiert, muss das QueueId-Element auf NDIS_DEFAULT_RECEIVE_QUEUE_ID festgelegt werden.
Nach einer erfolgreichen Rückgabe von der OID-Methodenanforderung enthält der InformationBuffer-Member der NDIS_OID_REQUEST-Struktur einen Zeiger auf einen Puffer. Dieser Puffer ist so formatiert, dass er Folgendes enthält:
Eine NDIS_RECEIVE_FILTER_INFO_ARRAY-Struktur , die eine Liste der Empfangsfilter angibt, die derzeit für einen Miniporttreiber konfiguriert sind.
Ein Array von NDIS_RECEIVE_FILTER_INFO Strukturen zu einem Empfangsfilter, der derzeit auf einem Miniporttreiber konfiguriert ist.
Abfragen der Parameter eines Empfangsfilters für einen Miniporttreiber
Um die Parameter eines bestimmten Paket-Zusammenführungs-Empfangsfilters abzurufen, der auf den Miniporttreiber heruntergeladen wurde, geben überlastende Treiber oder Anwendungen eine OID-Methodenanforderung von OID_RECEIVE_FILTER_PARAMETERS aus. Das InformationBuffer-Element der NDIS_OID_REQUEST-Struktur enthält einen Zeiger auf eine NDIS_RECEIVE_FILTER_PARAMETERS-Struktur . Der übergeordnete Treiber oder die Anwendung initialisiert die NDIS_RECEIVE_FILTER_PARAMETERS-Struktur , indem das FilterId-Element auf den ID-Wert ungleich null des Filters festgelegt wird, dessen Parameter zurückgegeben werden sollen.
Hinweis Der überlastende Treiber hat die Filter-ID aus einer früheren OID-Methodenanforderung von OID_RECEIVE_FILTER_SET_FILTER oder OID_RECEIVE_FILTER_ENUM_FILTERS abgerufen. Die Anwendung kann die Filter-ID nur aus einer früheren OID-Methodenanforderung von OID_RECEIVE_FILTER_ENUM_FILTERS abrufen.
Nach einer erfolgreichen Rückgabe von der OID-Methodenanforderung enthält der InformationBuffer-Member der NDIS_OID_REQUEST-Struktur einen Zeiger auf einen Puffer. Dieser Puffer ist so formatiert, dass er Folgendes enthält:
Eine NDIS_RECEIVE_FILTER_PARAMETERS-Struktur , die die Parameter für einen NDIS-Empfangsfilter angibt.
Ein Array von NDIS_RECEIVE_FILTER_FIELD_PARAMETERS Strukturen, das das Filtertestkriterium für ein Feld in einem Netzwerkpaketheader angibt.