FWPS_CALLOUT_CLASSIFY_FN1 função de retorno de chamada (fwpsk.h)
O mecanismo de filtro chama a função de texto explicativo classifyFn1 de um texto explicativo sempre que há dados a serem processados pelo texto explicativo.
Sintaxe
FWPS_CALLOUT_CLASSIFY_FN1 FwpsCalloutClassifyFn1;
void FwpsCalloutClassifyFn1(
[in] const FWPS_INCOMING_VALUES0 *inFixedValues,
[in] const FWPS_INCOMING_METADATA_VALUES0 *inMetaValues,
[in, out] void *layerData,
[in, optional] const void *classifyContext,
[in] const FWPS_FILTER1 *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] 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 classifyFn1 é 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_FILTER1 . 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 classifyFn1 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 classifyFn1 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 FwpsCalloutRegister1 .
O mecanismo de filtro chama a função de texto explicativo classifyFn1 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 classifyFn1 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 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 Flags da estrutura FWPS_FILTER1 .
- 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 .
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível a partir do Windows 7. |
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
FWPS_INCOMING_METADATA_VALUES0Exemplos 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