Compartilhar via


OID_RECEIVE_FILTER_ENUM_FILTERS

Um driver sobreposto emite uma solicitação de método OID de OID_RECEIVE_FILTER_ENUM_FILTERS para obter uma lista de todos os filtros configurados em um adaptador de rede.

O membro InformationBuffer da estrutura NDIS_OID_REQUEST contém um ponteiro para uma estrutura NDIS_RECEIVE_FILTER_INFO_ARRAY.

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

  • Uma estrutura NDIS_RECEIVE_FILTER_INFO_ARRAY que especifica uma lista de filtros de recebimento que estão atualmente configurados em um driver de miniporto.

  • Uma matriz de estruturas NDIS_RECEIVE_FILTER_INFO. Cada estrutura especifica os parâmetros de um filtro de recebimento que está atualmente configurado em um driver de miniporto.

Observações

Os filtros de recebimento do NDIS são usados nas seguintes interfaces NDIS:

Drivers ou aplicativos sobrepostos emitem solicitações de método OID de OID_RECEIVE_FILTER_ENUM_FILTERS para enumerar os filtros de recebimento que foram definidos em um adaptador de rede. Isso inclui filtros de recebimento que foram definidos em uma VPort (porta virtual SR-IOV) ou uma fila de recebimento de VMQ.

Diretrizes adicionais para a interface de coalescing de pacotes NDIS

A partir do Windows Server 2012, o agrupamento de pacotes NDIS dá suporte apenas à fila de recebimento padrão de um adaptador de rede.

Para enumerar os filtros de recebimento de agrupamento de pacotes, o driver sobreposto deve definir o QueueId membro da estrutura NDIS_RECEIVE_FILTER_INFO_ARRAY como NDIS_DEFAULT_RECEIVE_QUEUE_ID.

Diretrizes adicionais para a interface SR-IOV

A partir do Windows Server 2012, a interface SR-IOV dá suporte apenas à fila de recebimento padrão de uma porta virtual (VPort).

Para enumerar os filtros de recebimento do VPort, o driver sobreposto deve definir o QueueId membro da estrutura NDIS_RECEIVE_FILTER_INFO_ARRAY para NDIS_DEFAULT_RECEIVE_QUEUE_ID.

Diretrizes adicionais para a interface VMQ

Um driver sobreposto pode emitir solicitações de método OID de OID_RECEIVE_FILTER_ENUM_FILTERS para enumerar os filtros de recebimento que foram definidos em uma fila de recebimento de VMQ. Quando o driver sobreposto inicializa a estrutura de NDIS_RECEIVE_FILTER_INFO_ARRAY, ele define o membro QueueId como um dos seguintes valores:

  • O valor do identificador de fila para uma fila de recebimento não padrão. O driver sobreposto obteve o valor de entrada do identificador de fila de uma solicitação de método OID anterior de OID_RECEIVE_FILTER_ALLOCATE_QUEUE ou uma solicitação de consulta OID de OID_RECEIVE_FILTER_ENUM_QUEUES.

  • O valor do identificador de fila de NDIS_DEFAULT_RECEIVE_QUEUE_ID, que especifica a fila de recebimento padrão.

Retornar códigos de status

O NDIS manipula a solicitação de método OID de OID_RECEIVE_FILTER_ENUM_FILTERS para drivers de miniporto e retorna um dos seguintes códigos de status:

NDIS_STATUS_SUCCESS
A solicitação foi concluída com êxito. O InformationBuffer aponta para uma estrutura NDIS_RECEIVE_FILTER_INFO_ARRAY.

NDIS_STATUS_PENDING
A solicitação está pendente de conclusão. O NDIS passa o código de status final e os resultados para o manipulador de conclusão da solicitação OID do chamador após a conclusão da solicitação.

NDIS_STATUS_INVALID_LENGTH
O buffer de informações era muito curto. O NDIS define os dados de . QUERY_INFORMATION. BytesNeededed membro na estrutura NDIS_OID_REQUEST para o tamanho mínimo do buffer necessário.

NDIS_STATUS_FAILURE
A solicitação falhou por outros motivos.

Requisitos

Versão

Com suporte no NDIS 6.20 e posterior.

Cabeçalho

Ntddndis.h (inclua Ndis.h)

Consulte também

NDIS_OID_REQUEST

NDIS_RECEIVE_FILTER_INFO

NDIS_RECEIVE_FILTER_INFO_ARRAY

OID_RECEIVE_FILTER_ALLOCATE_QUEUE

OID_RECEIVE_FILTER_ENUM_QUEUES

OID_RECEIVE_FILTER_SET_FILTER