Compartilhar via


FWPS_CALLOUT_CLASSIFY_FN3 função de retorno de chamada (fwpsk.h)

Versão 3 da função de retorno de chamada invocada durante a classificação quando um filtro de texto explicativo corresponde. A diferença é que esse retorno de chamada retorna uma estrutura FWPS_FILTER3.

Sintaxe

FWPS_CALLOUT_CLASSIFY_FN3 FwpsCalloutClassifyFn3;

void FwpsCalloutClassifyFn3(
  const FWPS_INCOMING_VALUES0 *inFixedValues,
  const FWPS_INCOMING_METADATA_VALUES0 *inMetaValues,
  void *layerData,
  const void *classifyContext,
  const FWPS_FILTER3 *filter,
  UINT64 flowContext,
  FWPS_CLASSIFY_OUT0 *classifyOut
)
{...}

Parâmetros

inFixedValues

Um ponteiro para uma estrutura FWPS_INCOMING_VALUES0. Essa estrutura contém os valores de cada um dos campos de dados na camada que está sendo filtrada.

inMetaValues

Um ponteiro para uma estrutura FWPS_INCOMING_METADATA_VALUES0. Essa estrutura contém os valores de cada um dos campos de metadados na camada que está sendo filtrada.

layerData

Um ponteiro para uma estrutura que descreve os dados brutos na camada que está sendo filtrada. Esse parâmetro pode ser NULL, dependendo da camada que está sendo filtrada e das condições sob as quais a função de texto explicativo classifyFn3 é chamada. Para a camada de fluxo, esse parâmetro aponta para uma estrutura de FWPS_STREAM_CALLOUT_IO_PACKET0. Para todas as outras camadas, esse parâmetro aponta para uma estrutura de NET_BUFFER_LIST se não for NULL.

classifyContext

Um ponteiro para dados de contexto associados ao driver de texto explicativo pelo mecanismo de filtro.

filter

Um ponteiro para uma estrutura FWPS_FILTER3. Essa estrutura descreve o filtro que especifica o texto explicativo para a ação do filtro.

flowContext

Uma variável do tipo UINT64 que contém o contexto associado ao fluxo de dados. Se nenhum contexto estiver associado ao fluxo de dados, esse parâmetro será zero. Se o texto explicativo for adicionado ao mecanismo de filtro em uma camada de filtragem que não dá suporte a fluxos de dados, o classificarFn3 função de texto explicativo deverá ignorar esse parâmetro.

classifyOut

Um ponteiro para uma estrutura de FWPS_CLASSIFY_OUT0 que recebe todos os dados que a função de texto explicativo classifyFn3 retorna ao chamador.

Valor de retorno

Nenhum

Observações

Um driver explicativo registra as funções de texto explicativo de um texto explicativo com o mecanismo de filtro chamando a função FwpsCalloutRegister2.

O mecanismo de filtro chama a função de texto explicativo classificarFn3 com dados a serem processados sempre que todas as condições de teste forem verdadeiras para um filtro no mecanismo de filtro que especifica o texto explicativo para a ação do filtro.

A função de texto explicativo classifyFn1 deve limpar o sinalizador de FWPS_RIGHT_ACTION_WRITE no direitos membro da estrutura FWPS_CLASSIFY_OUT0 em qualquer uma das seguintes situações:

  • Quando a função de texto explicativo classifyFn1 define o membro actionType da estrutura FWPS_CLASSIFY_OUT0 como FWP_ACTION_BLOCK.
  • Quando a função de texto explicativo classifyFn1 define o membro actionType da estrutura FWPS_CLASSIFY_OUT0 como FWP_ACTION_PERMIT e o sinalizador FWPS_FILTER_FLAG_CLEAR_ACTION_RIGHT é definido no membro de sinalizadores da estrutura FWPS_FILTER3.
  • Quando um texto explicativo indica que ele pretende modificar a lista de buffers de rede de clone definindo o parâmetro intendToModify para TRUE em uma chamada para a função FwpsReferenceNetBufferList0.

Requisitos

Requisito Valor
de cliente com suporte mínimo Disponível a partir do Windows Vista.
cabeçalho fwpsk.h
IRQL <= DISPATCH_LEVEL

Consulte também