Função FwpsCalloutRegister3 (fwpsk.h)
A função FwpsCalloutRegister3 registra os ponteiros de função para uma versão 3 da estrutura FWPS_CALLOUT3.
Sintaxe
NTSTATUS FwpsCalloutRegister3(
[in, out] void *deviceObject,
[in] const FWPS_CALLOUT3 *callout,
[out, optional] UINT32 *calloutId
);
Parâmetros
[in, out] deviceObject
Um ponteiro para um objeto de dispositivo que foi criado anteriormente pelo driver de texto explicativo. Para obter mais informações sobre como um driver explicativo cria um objeto de dispositivo, consulte Criando um objeto de dispositivo.
[in] callout
Um ponteiro para uma estrutura de FWPS_CALLOUT3 constante que contém os dados necessários para registrar o texto explicativo com o mecanismo de filtro.
[out, optional] calloutId
Um ponteiro para uma variável do tipo UINT32 que recebe um identificador em tempo de execução que identifica o texto explicativo no mecanismo de filtro. O driver de texto explicativo passa esse identificador para a função FwpsCalloutUnregisterById0 ao cancelar o registro do texto explicativo do mecanismo de filtro. Se um driver de texto explicativo estiver filtrando um fluxo de dados, ele também passará esse identificador para as funções FwpsFlowAssociateContext0 e FwpsFlowRemoveContext0. Se um driver de texto explicativo injetar dados em fluxos de dados, ele também passará esse identificador para a função de
Valor de retorno
A função FwpsCalloutRegister3 do
Código de retorno | Descrição |
---|---|
STATUS_SUCCESS | O texto explicativo foi registrado com êxito com o mecanismo de filtro. |
STATUS_FWP_ALREADY_EXISTS | Não foi possível registrar o texto explicativo no mecanismo de filtro. Um texto explicativo já está registrado no mecanismo de filtro com um identificador idêntico ao GUID especificado no membro calloutKey |
outros códigos NTSTATUS | Ocorreu um erro. |
Observações
O driver de texto explicativo deve chamar FwpsCalloutUnregisterById0 antes de descarregar.
Um driver explicativo chama a função FwpsCalloutRegister3 para registrar um texto explicativo com o mecanismo de filtro. Um driver de texto explicativo pode registrar um texto explicativo com o mecanismo de filtro a qualquer momento, mesmo que o mecanismo de filtro não esteja em execução no momento.
Um texto explicativo e filtros que especificam o texto explicativo para a ação do filtro podem ser adicionados ao mecanismo de filtro antes que um driver de texto explicativo registre o texto explicativo com o mecanismo de filtro. Nessa situação, filtros com um tipo de ação de FWP_ACTION_CALLOUT_TERMINATING ou FWP_ACTION_CALLOUT_UNKNOWN são tratados como FWP_ACTION_BLOCKe filtros com um tipo de ação de FWP_ACTION_CALLOUT_INSPECTION são ignorados até que o texto explicativo seja registrado com o mecanismo de filtro.
Um driver de texto explicativo cancela o registro de um texto explicativo do mecanismo de filtro chamando a função FwpsCalloutUnregisterById0 ou a função FwpsCalloutUnregisterByKey0. Um driver de texto explicativo não pode ser descarregado até que todos os textos explicativos registrados anteriormente com o mecanismo de filtro não tenham sido registrados com êxito.
Essa função é essencialmente idêntica à versão anterior, FwpsCalloutRegister2. A única diferença é a estrutura de FWPS_CALLOUT3 atualizada apontada pelo parâmetro de texto explicativo.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Disponível a partir do Windows 8. |
da Plataforma de Destino |
Universal |
cabeçalho | fwpsk.h |
biblioteca | Fwpkclnt.lib |
IRQL | PASSIVE_LEVEL |
Consulte também
- criando um objeto de dispositivo
- FwpsCalloutUnregisterById0
- FwpsFlowAssociateContext0
- FwpsFlowRemoveContext0
- FwpsStreamInjectAsync0
- FwpsCalloutFlowDeleteNotifyFn0
- FWPS_CALLOUT3
- FwpsCalloutUnregisterById0
- FwpsCalloutUnregisterByKey0
- FwpsCalloutRegister2