フィルター ドライバーは、基になるドライバーが状態を報告するときに NDIS が呼び出す FilterStatus 関数を提供できます。 フィルター ドライバーは、状態表示を開始することもできます。
次の図は、フィルター処理された状態の表示を示しています。
NDIS は、基になるドライバーが状態表示関数 (NdisMIndicateStatusEx または NdisFIndicateStatus) を呼び出した後、フィルター ドライバーの FilterStatus 関数を呼び出します。 ミニポート ドライバーから状態を示す方法の詳細については、「 アダプターの状態の表示」を参照してください。
フィルター ドライバーは、フィルター処理された状態表示を基になるドライバーに渡すために、FilterStatus 関数で NdisFIndicateStatus を呼び出します。 フィルター ドライバーは、( NdisFIndicateStatus を呼び出さないで) 状態表示をフィルター処理したり、 NdisFIndicateStatus を呼び出す前に示された状態を変更したりできます。
状態表示を開始するには、フィルター ドライバーは、FilterStatus の前の呼び出しなしで NdisFIndicateStatus を呼び出します。
この場合、フィルタードライバーは、NDISがNdisFilterHandleパラメーターに渡したハンドルをSourceHandleメンバーに設定します。 状態表示が OID 要求に関連付けられている場合、フィルター ドライバーは DestinationHandle メンバーと RequestId メンバーを 設定して、NDIS が特定のプロトコル バインディングに状態表示を提供できるようにします。
フィルター ドライバーが NdisFIndicateStatus を呼び出した後、NDIS は、次の上にあるドライバーの状態関数 (ProtocolStatusEx または FilterStatus) を呼び出します。