Compartilhar via


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

Versão 3 da função 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_NOTIFY_FN3 FwpsCalloutNotifyFn3;

NTSTATUS FwpsCalloutNotifyFn3(
  FWPS_CALLOUT_NOTIFY_TYPE notifyType,
  const GUID *filterKey,
  FWPS_FILTER3 *filter
)
{...}

Parâmetros

notifyType

Um valor que indica o tipo de notificação que o mecanismo de filtro está enviando para o texto explicativo. Os valores válidos para este parâmetro são:

  • FWPS_CALLOUT_NOTIFY_ADD_FILTER: um filtro está sendo adicionado ao mecanismo de filtro que especifica o texto explicativo para a ação do filtro.
  • FWPS_CALLOUT_NOTIFY_DELETE_FILTER: um filtro está sendo excluído do mecanismo de filtro que especifica o texto explicativo para a ação do filtro.
  • FWPS_CALLOUT_NOTIFY_TYPE_MAX: um valor máximo para fins de teste.

filterKey

Um ponteiro para o identificador de gerenciamento do filtro, conforme especificado pelo aplicativo ou driver que está adicionando ou excluindo o filtro. Deve ser NULL se o parâmetro notifyType estiver definido como FWPS_CALLOUT_NOTIFY_DELETE_FILTER. Para obter mais informações, consulte Comentários.

filter

Um ponteiro para uma estrutura FWPS_FILTER3. Essa estrutura descreve o filtro que está sendo adicionado ou excluído do mecanismo de filtro.

Uma função de texto explicativo notifyFn3 pode definir o membro de contexto dessa estrutura para apontar para uma estrutura de contexto fornecida pelo driver de texto explicativo quando o filtro é adicionado ao mecanismo de filtro. Essa estrutura de contexto é opaca para o mecanismo de filtro e pode ser usada pelo driver de texto explicativo classificarfn3 função de texto explicativo para preservar dados específicos do driver ou informações de estado entre chamadas pelo mecanismo de filtro para a função de texto explicativo classifyFn3 função de texto explicativo.

Uma função de texto explicativo notifyFn3 pode limpar qualquer contexto associado ao filtro quando o filtro é excluído do mecanismo de filtro.

Valor de retorno

A função notifyFn3 de um texto explicativo retorna um dos seguintes códigos de NTSTATUS .

Código de retorno Descrição
STATUS_SUCCESS O driver de texto explicativo aceita a notificação do mecanismo de filtro.
Outros códigos de status Ocorreu um erro. Se o parâmetro notifyType for FWPS_CALLOUT_NOTIFY_ADD_FILTER, o filtro não será adicionado ao mecanismo de filtro. Se o parâmetro notifyType for FWPS_CALLOUT_NOTIFY_DELETE_FILTER, o filtro ainda será excluído do mecanismo de filtro.

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 notifyFn3 para notificar o driver de texto explicativo sobre os eventos associados ao texto explicativo. Se o driver de texto explicativo notifyFn3 função de texto explicativo não reconhecer o tipo de notificação passada no parâmetro notifyType, ele ignorará a notificação e retornará STATUS_SUCCESS.

Se um driver explicativo registrar um texto explicativo com o mecanismo de filtro após filtros que especificam o texto explicativo para a ação do filtro já tiverem sido adicionados ao mecanismo de filtro, o mecanismo de filtro não chamará o driver de texto explicativo notificarfn3 função de texto explicativo para notificar o texto explicativo sobre qualquer um dos filtros existentes. O mecanismo de filtro chama a função de texto explicativo do driver de texto explicativoFn3 para notificar o texto explicativo quando novos filtros que especificam o texto explicativo para a ação do filtro são adicionados ao mecanismo de filtro. Nessa situação, a função de texto explicativo notifyFn3 pode não ser chamada para cada filtro no mecanismo de filtro que especifica o texto explicativo para a ação do filtro. Se um driver explicativo registrar um texto explicativo após o mecanismo de filtro ser iniciado e o texto explicativo precisar saber sobre cada filtro no mecanismo de filtro que especifica o texto explicativo para a ação do filtro, o driver de texto explicativo deverá chamar as funções de gerenciamento apropriadas para enumerar todos os filtros no mecanismo de filtro e classificar por meio da lista resultante de filtros para localizar aqueles que especificam o texto explicativo para a ação do filtro. Para obter mais informações sobre como chamar essas funções, consulte Chamando outras funções da Plataforma de Filtragem do Windows.

Quando um filtro que especifica um texto explicativo para a ação do filtro é excluído do mecanismo de filtro, o mecanismo de filtro chama a função de texto explicativo notifyFn3 do driver de texto explicativo e passa FWP_CALLOUT_NOTIFY_DELETE_FILTER no parâmetro notifyType e NULL no parâmetro filterKey. Para obter mais informações, consulte Processando textos explicativos.

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