Definindo um filtro de recebimento de união de pacotes
Para baixar e definir um filtro de recebimento em um driver de miniporta que dá suporte à união de pacotes, um driver excessivamente emite uma solicitação de método OID de OID_RECEIVE_FILTER_SET_FILTER. O membro InformationBuffer da estrutura NDIS_OID_REQUEST para a solicitação OID contém um ponteiro para um buffer alocado pelo chamador. Esse buffer é formatado para conter o seguinte:
Uma estrutura NDIS_RECEIVE_FILTER_PARAMETERS que especifica os parâmetros para um filtro de recebimento de NDIS.
Uma matriz de estruturas de NDIS_RECEIVE_FILTER_FIELD_PARAMETERS que especifica o critério de teste de filtro para um campo em um cabeçalho de pacote de rede.
Para obter mais informações sobre como um driver de sobreposição especifica os parâmetros para um filtro de recebimento de união de pacotes, consulte Especificando um filtro de recebimento de união de pacotes.
Quando o NDIS recebe uma solicitação OID para definir um filtro de recebimento no adaptador de rede subjacente, ele verifica os parâmetros de filtro de recebimento. Se o driver de sobreposição estiver especificando um novo filtro de recebimento, o NDIS também gerará um ID (identificador de filtro) exclusivo para o filtro de recebimento.
Depois que o NDIS aloca os recursos necessários e a ID do filtro, ele encaminha a solicitação OID para o driver de miniporto. Se o driver de miniporto puder alocar com êxito os recursos de software e hardware necessários para o filtro de recebimento, o driver de miniporto concluirá a solicitação OID com um status de NDIS_STATUS_SUCCESS.
Após um retorno bem-sucedido da solicitação de método OID de OID_RECEIVE_FILTER_SET_FILTER, o membro InformationBuffer da estrutura NDIS_OID_REQUEST contém um ponteiro para uma estrutura NDIS_RECEIVE_FILTER_PARAMETERS . Essa estrutura é atualizada pelo NDIS com a nova ID de filtro.