FWPS_CALLOUT_CLASSIFY_FN1 funzione di callback (fwpsk.h)

Il motore di filtro chiama una funzione di callout di classificazionefn1 di un callout ogni volta che sono presenti dati da elaborare dal callout.

NotaclassificazioneFn1 è la versione specifica di classificazioneFn usata in Windows 7 e versioni successive. Per altre informazioni , vedere Nomi Version-Independent WFP e Versioni specifiche di Windows . Per Windows 8, la classificazioneFn2 è disponibile. Per Windows Vista, la classificazioneFn0 è disponibile.
 

Sintassi

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
)
{...}

Parametri

[in] inFixedValues

Puntatore a una struttura di FWPS_INCOMING_VALUES0 . Questa struttura contiene i valori per ognuno dei campi dati nel livello filtrato.

[in] inMetaValues

Puntatore a un oggetto FWPS_INCOMING_METADATA_VALUES0 struttura. Questa struttura contiene i valori per ognuno dei campi dei metadati nel livello filtrato.

[in, out] layerData

Puntatore a una struttura che descrive i dati non elaborati nel livello filtrato. Questo parametro può essere NULL, a seconda del livello filtrato e delle condizioni in cui viene chiamata la funzione di callout di classificazioneFn1 . Per il livello di flusso, questo parametro punta a un FWPS_STREAM_CALLOUT_IO_PACKET0 struttura. Per tutti gli altri livelli, questo parametro punta a una struttura NET_BUFFER_LIST se non è NULL.

[in, optional] classifyContext

Puntatore ai dati di contesto associati al driver di callout dal motore di filtro.

[in] filter

Puntatore a una struttura FWPS_FILTER1 . Questa struttura descrive il filtro che specifica il callout per l'azione del filtro.

[in] flowContext

Variabile tipizzata UINT64 che contiene il contesto associato al flusso di dati. Se non è associato alcun contesto al flusso di dati, questo parametro è zero. Se il callout viene aggiunto al motore di filtro a un livello di filtro che non supporta i flussi di dati, la funzione di callout di classificazioneFn1 deve ignorare questo parametro.

[in, out] classifyOut

Puntatore a una struttura di FWPS_CLASSIFY_OUT0 che riceve tutti i dati restituiti dalla funzione di callout di classificazioneFn1 al chiamante.

Valore restituito

nessuno

Osservazioni

Un driver di callout registra le funzioni di callout di un callout con il motore di filtro chiamando la funzione FwpsCalloutRegister1 .

Il motore di filtro chiama la funzione di callout di classificazioneFn1 di un callout con dati da elaborare ogni volta che tutte le condizioni di test sono vere per un filtro nel motore di filtro che specifica il callout per l'azione del filtro.

La funzione di callout classificaFn1 di un callout deve cancellare il flag di FWPS_RIGHT_ACTION_WRITE nel membro dei dirittidella struttura FWPS_CLASSIFY_OUT0 in una delle situazioni seguenti:

  • Quando la funzione di callout di classificazioneFn1 imposta il membro actionType della struttura FWPS_CLASSIFY_OUT0 su FWP_ACTION_BLOCK.
  • Quando la funzione di callout di classificazioneFn1 imposta il membro actionType della struttura FWPS_CLASSIFY_OUT0 su FWP_ACTION_PERMIT e il flag di FWPS_FILTER_FLAG_CLEAR_ACTION_RIGHT viene impostato nel membro Flagdella struttura FWPS_FILTER1.
  • Quando un callout ha indicato che intende modificare l'elenco clone net buffer impostando il parametro intendToModify su TRUE in una chiamata all'oggetto Funzione FwpsReferenceNetBufferList0 .

Requisiti

Requisito Valore
Client minimo supportato Disponibile a partire da Windows 7.
Piattaforma di destinazione Windows
Intestazione fwpsk.h (includere Fwpsk.h)
IRQL <= DISPATCH_LEVEL

Vedi anche

Associazione del contesto a un Flusso di dati

Funzioni callout driver callout

Registrazione dei dati

FWPS_CALLOUT0

FWPS_CLASSIFY_OUT0

FWPS_FILTER1

FWPS_INCOMING_METADATA_VALUES0

FWPS_INCOMING_VALUES0

FwpsCalloutRegister1

FwpsReferenceNetBufferList0

NET_BUFFER_LIST

Esempi di modifica dei pacchetti

Registrazione dei callout con il motore di filtro

Uso di un callout per un'ispezione approfondita dei dati di Stream

Uso di un callout per l'ispezione approfondita

classificazioneFn

classificazioneFn0

classificazioneFn2