Compartilhar via


Consultando filtros de recebimento de agrupamento de pacotes

Os drivers e aplicativos em excesso podem consultar filtros de recebimento de pacotes que foram baixados em um driver de miniporte fazendo o seguinte:

O NDIS manipula as solicitações OID do método OID_RECEIVE_FILTER_ENUM_FILTERS e OID_RECEIVE_FILTER_PARAMETERS para drivers de miniport. O NDIS obteve as informações de um cache interno dos dados que recebeu do OID_RECEIVE_FILTER_SET_FILTER solicitação OID.

Enumerando os filtros de recebimento em um driver de miniporte

Para obter uma lista de todos os filtros de recebimento de agrupamento de pacotes que foram baixados em um driver de miniporto, drivers e aplicativos sobrepostos emitem uma solicitação de método OID de OID_RECEIVE_FILTER_ENUM_FILTERS. O membro InformationBuffer da estrutura NDIS_OID_REQUEST contém um ponteiro para uma estrutura NDIS_RECEIVE_FILTER_INFO_ARRAY .

Nota Quando o driver ou aplicativo sobreposto inicializa a estrutura NDIS_RECEIVE_FILTER_INFO_ARRAY , ele deve definir o membro QueueId como NDIS_DEFAULT_RECEIVE_QUEUE_ID.

Após um retorno bem-sucedido da solicitação de método OID, o membro InformationBuffer da estrutura NDIS_OID_REQUEST contém um ponteiro para um buffer. Esse buffer é formatado para conter o seguinte:

Consultando os parâmetros de um filtro de recebimento em um driver de miniporte

Para obter os parâmetros de um filtro de recebimento de pacote específico que foi baixado para o driver de miniporto, drivers ou aplicativos sobrepostos emitem uma solicitação de método OID de OID_RECEIVE_FILTER_PARAMETERS. O membro InformationBuffer da estrutura NDIS_OID_REQUEST contém um ponteiro para uma estrutura NDIS_RECEIVE_FILTER_PARAMETERS . O driver ou aplicativo sobreposto inicializa a estrutura NDIS_RECEIVE_FILTER_PARAMETERS definindo o membro FilterId como o valor de ID diferente de zero do filtro cujos parâmetros devem ser retornados.

Nota O driver sobreposto obteve a ID do filtro de uma solicitação de método OID anterior de OID_RECEIVE_FILTER_SET_FILTER ou OID_RECEIVE_FILTER_ENUM_FILTERS. O aplicativo só pode obter a ID do filtro de uma solicitação de método OID anterior de OID_RECEIVE_FILTER_ENUM_FILTERS.

Após um retorno bem-sucedido da solicitação de método OID, o membro InformationBuffer da estrutura NDIS_OID_REQUEST contém um ponteiro para um buffer. Esse buffer é formatado para conter o seguinte: