estructura NDIS_FILTER_INTERFACE (ndis.h)

La estructura NDIS_FILTER_INTERFACE define los atributos de un filtro NDIS.

Sintaxis

typedef struct _NDIS_FILTER_INTERFACE {
  NDIS_OBJECT_HEADER Header;
  ULONG              Flags;
  ULONG              FilterType;
  ULONG              FilterRunType;
  NET_IFINDEX        IfIndex;
  NET_LUID           NetLuid;
  NDIS_STRING        FilterClass;
  NDIS_STRING        FilterInstanceName;
} NDIS_FILTER_INTERFACE, *PNDIS_FILTER_INTERFACE;

Miembros

Header

Estructura NDIS_OBJECT_HEADER para la estructura de la interfaz de filtro.

NDIS establece el miembro Type de la estructura que Header especifica para NDIS_OBJECT_TYPE_DEFAULT.

Si el identificador pasado a NdisEnumerateFilterModules pertenece a un objeto NDIS 6.30 o posterior, NDIS establece Revision en NDIS_FILTER_INTERFACE_REVISION_2 y Size en NDIS_SIZEOF_FILTER_INTERFACE_REVISION_2.

Si el identificador pasado a NdisEnumerateFilterModules pertenece a un objeto NDIS 6.20 o anterior, NDIS establece Revision en NDIS_FILTER_INTERFACE_REVISION_1 y Size en NDIS_SIZEOF_FILTER_INTERFACE_REVISION_1.

Flags

Campo de bits que define el tipo de controlador NDIS que implementa el filtro. Este miembro debe establecerse en uno de los siguientes tipos de controladores:

NDIS_FILTER_INTERFACE_IM_FILTER

El filtro se implementa en un controlador intermedio de filtro NDIS 5.1 o anterior.

NDIS_FILTER_INTERFACE_LW_FILTER

El filtro se implementa en un controlador de filtro NDIS 6.0 o posterior.

NDIS_FILTER_INTERFACE_SEND_BYPASS

El filtro no está asociado actualmente a la ruta de acceso de envío. Esta marca solo se establece si Header.Revision es mayor o igual que NDIS_FILTER_INTERFACE_REVISION_2.

NDIS_FILTER_INTERFACE_RECEIVE_BYPASS

El filtro no está asociado actualmente a la ruta de acceso de recepción. Esta marca solo se establece si Header.Revision es mayor o igual que NDIS_FILTER_INTERFACE_REVISION_2.

FilterType

Tipo de comportamiento del filtro. Este tipo debe ser uno de los siguientes valores:

NdisFilterTypeMonitoring = 1

Filtro de supervisión.

NdisFilterTypeModifying = 2

Filtro de modificación.

FilterRunType

Tipo de prioridad de datos adjuntos en tiempo de ejecución para el filtro. Este tipo debe ser uno de los siguientes valores:

NdisFilterRunTypeMandatory = 1

Filtro obligatorio. Si el filtro no se asocia a la pila de controladores, NDIS anulará el resto de la pila.

NdisFilterRunTypeOptional = 2

Filtro opcional. Si el filtro no se asocia a la pila de controladores, NDIS no anulará el resto de la pila.

IfIndex

Índice de la interfaz NDIS del módulo de filtro.

NetLuid

Valor de NET_LUID asignado al módulo de filtro. El NET_LUID es equivalente al nombre de la interfaz (ifName en RFC 2863).

FilterClass

Cadena UNICODE que especifica la clase de filtro. Esta cadena es la misma que la entrada del archivo FILTERClass INF.

FilterInstanceName

Nombre de la instancia de filtro.

Comentarios

The La función NdisEnumerateFilterModules devuelve una estructura NDIS_FILTER_INTERFACE para cada filtro de la pila de controladores. El miembro Flags identifica el filtro como un controlador intermedio de filtro NDIS 5.1 o anterior o un módulo de filtro NDIS 6.0 o posterior.

Un filtro ligero puede insertar o quitarse dinámicamente de la ruta de acceso de envío o recepción llamando a NdisFRestartFilter y proporcionando una estructura de NDIS_FILTER_PARTIAL_CHARACTERISTICS a NdisSetOptionalHandlers.

Requisitos

Requisito Value
Cliente mínimo compatible Se admite en NDIS 6.0 y versiones posteriores.
Encabezado ndis.h (incluya Ndis.h)

Consulte también

NDIS_OBJECT_HEADER

NET_LUID

NdisEnumerateFilterModules