Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El motor de filtros llama a la función de llamada classifyFn1 de una llamada cada vez que hay datos que va a procesar la llamada.
Nota
classifyFn1 es la versión específica de classifyFn que se usa en Windows 7 y versiones posteriores. Para obtener más información, consulta Nombres independientes de la versión del PMA y versiones específicas de Windows como destino. Para Windows 8, classifyFn2 está disponible. Para Windows Vista, classifyFn0 está disponible.
Sintaxis
FWPS_CALLOUT_CLASSIFY_FN1 FwpsCalloutClassifyFn1;
void FwpsCalloutClassifyFn1(
const FWPS_INCOMING_VALUES0 *inFixedValues,
const FWPS_INCOMING_METADATA_VALUES0 *inMetaValues,
void *layerData,
const void *classifyContext,
const FWPS_FILTER1 *filter,
UINT64 flowContext,
FWPS_CLASSIFY_OUT0 *classifyOut
)
{...}
Parámetros
inFixedValues
Puntero a una estructura de FWPS_INCOMING_VALUES0 . Esta estructura contiene los valores de cada uno de los campos de datos en la capa que se va a filtrar.
inMetaValues
Puntero a una estructura FWPS_INCOMING_METADATA_VALUES0 . Esta estructura contiene los valores de cada uno de los campos de metadatos en la capa que se va a filtrar.
layerData
Puntero a una estructura que describe los datos sin procesar en 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 classifyFn1 . Para la capa de secuencia, este parámetro apunta a una estructura de FWPS_STREAM_CALLOUT_IO_PACKET0 . Para todas las demás capas, este parámetro apunta a una estructura de NET_BUFFER_LIST si no es NULL.
classifyContext
Puntero a los datos de contexto asociados al controlador de llamada por el motor de filtro.
filter
Puntero a una estructura de FWPS_FILTER1 . Esta estructura describe el filtro que especifica la llamada para la acción del filtro.
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 filtros en una capa de filtrado que no admite flujos de datos, la función de llamada classifyFn1 debe omitir este parámetro.
classifyOut
Puntero a una estructura de FWPS_CLASSIFY_OUT0 que recibe los datos que la función de llamada classifyFn1 devuelve al autor de la llamada.
Valor devuelto
None
Observaciones
Un controlador de llamada registra las funciones de llamada de una llamada con el motor de filtro mediante una llamada a la función FwpsCalloutRegister1 .
El motor de filtros llama a la función de llamada classifyFn1 de una llamada con datos que se van a procesar cada vez que todas las condiciones de prueba son verdaderas para un filtro en el motor de filtros que especifica la llamada para la acción del filtro.
La función de llamada classifyFn1 de una llamada debe borrar la marca FWPS_RIGHT_ACTION_WRITE en el miembro de derechos de la estructura FWPS_CLASSIFY_OUT0 en cualquiera de las situaciones siguientes:
- Cuando la función de llamada classifyFn1 establece el miembro actionType de la estructura FWPS_CLASSIFY_OUT0en FWP_ACTION_BLOCK.
- Cuando la función de llamada classifyFn1 establece el miembro actionType de la estructura 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_FILTER1 .
- 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 la función FwpsReferenceNetBufferList0 .
Requisitos
| Requisito | Valor |
|---|---|
| Header | fwpsu.h |