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

O mecanismo de filtro chama a função de texto explicativo classifyFn2 de um texto explicativo sempre que há dados a serem processados pelo texto explicativo.

ObservaçãoclassifyFn2 é a versão específica de classifyFn usada em Windows 8 e posteriores. Consulte Nomes de Version-Independent WFP e Direcionamento de versões específicas do Windows para obter mais informações. Para o Windows 7, classifyFn1 está disponível. Para o Windows Vista, classifyFn0 está disponível.

 

Sintaxe

FWPS_CALLOUT_CLASSIFY_FN2 FwpsCalloutClassifyFn2;

void FwpsCalloutClassifyFn2(
  [in]                const FWPS_INCOMING_VALUES0 *inFixedValues,
  [in]                const FWPS_INCOMING_METADATA_VALUES0 *inMetaValues,
  [in, out, optional] void *layerData,
  [in, optional]      const void *classifyContext,
  [in]                const FWPS_FILTER2 *filter,
  [in]                UINT64 flowContext,
  [in, out]           FWPS_CLASSIFY_OUT0 *classifyOut
)
{...}

Parâmetros

[in] 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.

[in] inMetaValues

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

[in, out, optional] 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 classifyFn2 é chamada. Para a camada de fluxo, esse parâmetro aponta para um FWPS_STREAM_CALLOUT_IO_PACKET0 estrutura. Para todas as outras camadas, esse parâmetro aponta para uma estrutura NET_BUFFER_LIST se não for NULL.

[in, optional] classifyContext

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

[in] filter

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

[in] 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, a função de texto explicativo classifyFn2 deverá ignorar esse parâmetro.

[in, out] classifyOut

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

Retornar valor

Nenhum

Comentários

Um driver de texto 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 classifyFn2 de um texto explicativo 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 classifyFn2 de um texto explicativo deve limpar o sinalizador FWPS_RIGHT_ACTION_WRITE no membro de direitos da estrutura FWPS_CLASSIFY_OUT0 em qualquer uma das seguintes situações:

  • Quando a função de texto explicativo classifyFn2 define o membro actionType da estrutura FWPS_CLASSIFY_OUT0 como FWP_ACTION_BLOCK.
  • Quando a função de texto explicativo classifyFn2 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 Flags da estrutura FWPS_FILTER2 .
  • Quando um texto explicativo tiver indicado que pretende modificar a lista de buffers de rede de clonagem definindo o parâmetro intendToModify como TRUE em uma chamada para o Função FwpsReferenceNetBufferList0 .

    Essa função é essencialmente idêntica à versão anterior, classifyFn1. No entanto, a estrutura de FWPS_FILTER2 atualizada é apontada pelo parâmetro de filtro e o parâmetro layerData é opcional.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível a partir do Windows 8.
Plataforma de Destino Windows
Cabeçalho fwpsk.h (inclua Fwpsk.h)
IRQL <= DISPATCH_LEVEL

Confira também

Associando Contexto a um Fluxo de Dados

Funções de texto explicativo do driver de texto explicativo

Log de dados

FWPS_CLASSIFY_OUT0

FWPS_FILTER2

FWPS_INCOMING_METADATA_VALUES0

FWPS_INCOMING_VALUES0

FwpsCalloutRegister2

FwpsReferenceNetBufferList0

NET_BUFFER_LIST

Exemplos de modificação de pacote

Registrando textos explicativos com o mecanismo de filtro

Usando um texto explicativo para inspeção profunda de dados de Stream

Usando um texto explicativo para inspeção profunda

classifyFn

classifyFn0

classifyFn1