Partilhar 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 InformationBuffer membro 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 atualmente configurados em um driver de miniporta.

  • Uma série de NDIS_RECEIVE_FILTER_INFO estruturas. Cada estrutura especifica os parâmetros de um filtro de recebimento que está configurado atualmente em um driver de miniporta.

Comentários

Os filtros de recebimento 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 porta virtual SR-IOV (VPort) ou em uma fila de recebimento VMQ.

Diretrizes adicionais para a interface NDIS Packet Coalescing

A partir do Windows Server 2012, a coalescência de pacotes NDIS suporta apenas a fila de recebimento padrão de um adaptador de rede.

Para enumerar os filtros de recebimento de aglutinação 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 suporta apenas a fila de recebimento padrão de uma porta virtual (VPort).

Para enumerar os filtros de recebimento VPort, 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 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 VMQ. Quando o driver sobreposto inicializa a estrutura NDIS_RECEIVE_FILTER_INFO_ARRAY, ele define o membro QueueId para 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.

Códigos de status de retorno

O NDIS lida com a solicitação do método OID de OID_RECEIVE_FILTER_ENUM_FILTERS para drivers de miniporta 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
O pedido está pendente de conclusão. O NDIS passa o código de status final e os resultados para o manipulador de conclusão de 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. NDIS definir o DADOS. QUERY_INFORMATION. BytesNeeded membro na estrutura NDIS_OID_REQUEST para o tamanho mínimo de buffer necessário.

NDIS_STATUS_FAILURE
O pedido foi rejeitado por outros motivos.

Requerimentos

Versão

Suportado no NDIS 6.20 e posterior.

Cabeçalho

Ntddndis.h (inclui Ndis.h)

Ver 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