FWPS_CALLOUT_CLASSIFY_FN2 función de devolución de llamada (fwpsk.h)
El motor de filtros llama a la función de llamada clasifiqueFn2 función de llamada cada vez que la llamada procese los datos.
Sintaxis
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
Puntero a una estructura FWPS_INCOMING_VALUES0. Esta estructura contiene los valores de cada uno de los campos de datos de la capa que se está filtrando.
[in] inMetaValues
Puntero a un FWPS_INCOMING_METADATA_VALUES0 estructura. Esta estructura contiene los valores de cada uno de los campos de metadatos de la capa que se está filtrando.
[in, out, optional] layerData
Puntero a una estructura que describe los datos sin procesar de la capa que se filtran. Este parámetro puede ser NULL, en función de la capa que se filtra y de las condiciones en las que se llama a la función de llamada clasifiqueFn2. Para la capa de flujo, este parámetro apunta a un estructura FWPS_STREAM_CALLOUT_IO_PACKET0. Para todas las demás capas, este parámetro apunta a una estructura NET_BUFFER_LIST si no es NULL.
[in, optional] classifyContext
Puntero a los datos de contexto asociados al controlador de llamada por el motor de filtro.
[in] filter
Puntero a una estructura FWPS_FILTER2. Esta estructura describe el filtro que especifica la llamada para la acción del filtro.
[in] flowContext
Variable con tipo UINT64 que contiene el contexto asociado al flujo de datos. Si no hay ningún contexto asociado al flujo de datos, este parámetro es cero. Si la llamada se agrega al motor de filtro en una capa de filtrado que no admite flujos de datos, el clasifiqueFn2 función de llamada debe omitir este parámetro.
[in, out] classifyOut
Puntero a una estructura de FWPS_CLASSIFY_OUT0 que recibe los datos que el clasifiqueFn2 función de llamada vuelva al autor de la llamada.
Valor devuelto
Ninguno
Observaciones
Un controlador de llamada registra las funciones de llamada de una llamada con el motor de filtros llamando a la función FwpsCalloutRegister2.
El motor de filtros llama a la clasifiqueFn2 función de llamada con datos que se van a procesar siempre que todas las condiciones de prueba sean verdaderas para un filtro en el motor de filtros que especifica la llamada para la acción del filtro.
La función de llamada clasifiqueFn2 debe borrar la marca FWPS_RIGHT_ACTION_WRITE en los derechos miembro de la estructura FWPS_CLASSIFY_OUT0 en cualquiera de las situaciones siguientes:
- Cuando la función de llamada de clasifiqueFn2 establece el actionType miembro de la estructura de FWPS_CLASSIFY_OUT0 en FWP_ACTION_BLOCK.
- Cuando la función de llamada clasifiqueFn2 establece el miembro actionType de la estructura de FWPS_CLASSIFY_OUT0 en FWP_ACTION_PERMIT y la marca FWPS_FILTER_FLAG_CLEAR_ACTION_RIGHT se establece en el miembro Flags de la estructura FWPS_FILTER2.
-
Cuando una llamada ha indicado que pretende modificar la lista de búferes de red clonada estableciendo el parámetro intendToModify en TRUE en una llamada a .
función fwpsReferenceNetBufferList0.
Esta función es esencialmente idéntica a la versión anterior, clasificarFn1. Sin embargo, la estructura de FWPS_FILTER2 actualizada apunta al parámetro de filtro de y el parámetro layerData es opcional.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Disponible a partir de Windows 8. |
de la plataforma de destino de | Windows |
encabezado de | fwpsk.h (incluya Fwpsk.h) |
irQL | <= DISPATCH_LEVEL |
Consulte también
asociar contexto con un de flujo de datos
funciones de llamada del controlador de llamada de
FWPS_INCOMING_METADATA_VALUES0ejemplos de modificación de paquetes de
registrar llamadas con el motor de filtro
usar una llamada para la inspección profunda de datos de flujo
usar una llamada para de inspección profunda