estructura NDIS_FILTER_ATTACH_PARAMETERS (ndis.h)

La estructura NDIS_FILTER_ATTACH_PARAMETERS define los parámetros de inicialización para el módulo de filtro.

Sintaxis

typedef struct _NDIS_FILTER_ATTACH_PARAMETERS {
  NDIS_OBJECT_HEADER                Header;
  NET_IFINDEX                       IfIndex;
  NET_LUID                          NetLuid;
  PNDIS_STRING                      FilterModuleGuidName;
  NET_IFINDEX                       BaseMiniportIfIndex;
  PNDIS_STRING                      BaseMiniportInstanceName;
  PNDIS_STRING                      BaseMiniportName;
  NDIS_MEDIA_CONNECT_STATE          MediaConnectState;
  NET_IF_MEDIA_DUPLEX_STATE         MediaDuplexState;
  ULONG64                           XmitLinkSpeed;
  ULONG64                           RcvLinkSpeed;
  NDIS_MEDIUM                       MiniportMediaType;
  NDIS_PHYSICAL_MEDIUM              MiniportPhysicalMediaType;
  NDIS_HANDLE                       MiniportMediaSpecificAttributes;
  PNDIS_OFFLOAD                     DefaultOffloadConfiguration;
  USHORT                            MacAddressLength;
  UCHAR                             CurrentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH];
  NET_LUID                          BaseMiniportNetLuid;
  NET_IFINDEX                       LowerIfIndex;
  NET_LUID                          LowerIfNetLuid;
  ULONG                             Flags;
  PNDIS_HD_SPLIT_CURRENT_CONFIG     HDSplitCurrentConfig;
  PNDIS_RECEIVE_FILTER_CAPABILITIES ReceiveFilterCapabilities;
  PDEVICE_OBJECT                    MiniportPhysicalDeviceObject;
  PNDIS_NIC_SWITCH_CAPABILITIES     NicSwitchCapabilities;
  BOOLEAN                           BaseMiniportIfConnectorPresent;
  PNDIS_SRIOV_CAPABILITIES          SriovCapabilities;
  PNDIS_NIC_SWITCH_INFO_ARRAY       NicSwitchArray;
} NDIS_FILTER_ATTACH_PARAMETERS, *PNDIS_FILTER_ATTACH_PARAMETERS;

Miembros

Header

Estructura NDIS_OBJECT_HEADER de la estructura NDIS_FILTER_ATTACH_PARAMETERS . NDIS establece el miembro Type de la estructura que Header especifica para NDIS_OBJECT_TYPE_FILTER_ATTACH_PARAMETERS.

Para indicar la versión de la estructura de NDIS_FILTER_ATTACH_PARAMETERS , NDIS establece el miembro Revision en uno de los valores siguientes:

NDIS_FILTER_ATTACH__PARAMETERS_REVISION_4

Se agregaron varios miembros para NDIS 6.30.

NDIS establece el miembro Size en NDIS_SIZEOF_FILTER_ATTACH_PARAMETERS_REVISION_4.

NDIS_FILTER_ATTACH_PARAMETERS_REVISION_3

Se agregaron los miembros ReceiveFilterCapabilities, MiniportPhysicalDeviceObject y NicSwitchCapabilities para NDIS 6.20.

NDIS establece el miembro Size en NDIS_SIZEOF_FILTER_ATTACH_PARAMETERS_REVISION_3.

NDIS_FILTER_ATTACH_PARAMETERS_REVISION_2

Se agregó el miembro HDSplitCurrentConfig para NDIS 6.1.

NDIS establece el miembro Size en NDIS_SIZEOF_FILTER_ATTACH_PARAMETERS_REVISION_2.

NDIS_FILTER_ATTACH_PARAMETERS_REVISION_1

Versión original de NDIS 6.0.

NDIS establece el miembro Size en NDIS_SIZEOF_FILTER_ATTACH_PARAMETERS_REVISION_1.

IfIndex

Índice de la interfaz NDIS del módulo de filtro que NDIS está adjuntando a la pila de controladores.

NetLuid

La interfaz de red NDIS NET_LUID valor para el módulo de filtro que NDIS está adjuntando a la pila de controladores. El NET_LUID es equivalente al nombre de la interfaz (ifName en RFC 2863 ).

FilterModuleGuidName

Nombre GUID del módulo de filtro que está adjuntando NDIS.

BaseMiniportIfIndex

Índice de la interfaz de red NDIS del adaptador de minipuerto base. Es decir, si hay minipuertos virtuales o módulos de filtro instalados a través de un adaptador de miniporte físico, el valor de este miembro es el índice de interfaz del adaptador de miniport físico o un miniporte virtual del controlador intermedio MUX de nivel superior.

BaseMiniportInstanceName

Puntero a un valor de tipo NDIS_STRING que contiene una cadena Unicode con recuento. Esta cadena especifica el nombre descriptivo de la interfaz para el adaptador de minipuerto base. Para Windows 2000 y versiones posteriores, NDIS define el tipo de NDIS_STRING como un tipo de UNICODE_STRING .

BaseMiniportName

Nombre del adaptador de minipuerto base.

MediaConnectState

The NET_IF_MEDIA_CONNECT_STATE tipo de estado de conexión.

MediaDuplexState

Estado dúplex multimedia para el adaptador de minipuerto subyacente. Para obtener más información, consulte OID_GEN_MEDIA_DUPLEX_STATE.

XmitLinkSpeed

Velocidad de enlace de transmisión actual del adaptador de miniporte subyacente en bits por segundo. Para obtener más información, consulte OID_GEN_LINK_SPEED_EX.

RcvLinkSpeed

Velocidad de vínculo de recepción actual del adaptador de minipuerto subyacente en bits por segundo. Para obtener más información, consulte OID_GEN_LINK_SPEED_EX.

MiniportMediaType

Tipo NdisMediumXxx que admite el adaptador de miniport subyacente base. Para obtener más información, consulte NDIS_MEDIUM.

MiniportPhysicalMediaType

Tipo medio físico para el adaptador de miniport subyacente base. Para obtener más información, consulte OID_GEN_PHYSICAL_MEDIUM.

MiniportMediaSpecificAttributes

Puntero a una estructura de NDIS_OBJECT_HEADER que identifica una estructura que contiene atributos específicos de medios de miniporte o NULL si no hay dichos atributos. El miembro Type de la estructura NDIS_OBJECT_HEADER identifica el tipo de la estructura de atributos. Por ejemplo, si el tipo de medio del adaptador de minipuerto subyacente es NdisMediumNative802_11, el miembro Type debe ser NDIS_OBJECT_TYPE_MINIPORT_ADAPTER_NATIVE_802_11_ATTRIBUTES y el miembro MiniportMediaSpecificAttributes apunta a un elemento NDIS_MINIPORT_ADAPTER_NATIVE_802_11_ATTRIBUTES estructura.

DefaultOffloadConfiguration

Puntero a una estructura de NDIS_OFFLOAD que define los atributos de descarga de tareas. El controlador de filtro debe revisar estos atributos para obtener las funcionalidades de descarga de tareas de los controladores subyacentes. El controlador de filtro debe modificar estos atributos, si es necesario, para reflejar los cambios en la compatibilidad de descarga de tareas que requiere.

MacAddressLength

Longitud de la dirección MAC, en bytes. La longitud de la dirección MAC es específica del tipo de medio.

CurrentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH]

La dirección MAC actual. Por ejemplo, el OID de OID_802_3_CURRENT_ADDRESS especifica la dirección MAC actual para los controladores IEEE 802.3.

BaseMiniportNetLuid

La interfaz de red NDIS NET_LUID del adaptador de minipuerto base. Es decir, si hay minipuertos virtuales o módulos de filtro instalados a través de un adaptador de minipuerto físico, el valor de este miembro es el NET_LUID del adaptador de miniport físico o un miniporte virtual del controlador intermedio MUX de nivel más alto.

LowerIfIndex

Índice de la interfaz de red NDIS de la interfaz justo debajo del módulo de filtro actual. Es decir, si hay módulos de filtro o NDIS 5. x filtrar controladores intermedios que se instalan a través de un adaptador de miniport físico o el controlador intermedio MUX de nivel superior, este miembro contiene el índice de interfaz de la interfaz del módulo de filtro o la interfaz de controlador intermedio de filtro que está justo debajo del módulo de filtro actual. Si no hay ninguna interfaz de controlador intermedio de filtro o módulo de filtro instalado sobre el adaptador de miniport físico o el controlador intermedio MUX de nivel superior, este miembro contiene el índice de interfaz del adaptador de miniport físico subyacente o el miniporte virtual del controlador intermedio MUX de nivel superior.

LowerIfNetLuid

La interfaz de red NDIS NET_LUID valor de la interfaz justo debajo del módulo de filtro actual. Es decir, si hay módulos de filtro o NDIS 5. x filtra los controladores intermedios que se instalan a través de un adaptador de minipuerto físico o el controlador intermedio MUX de nivel superior, este miembro contiene la interfaz de red NET_LUID de la interfaz del módulo de filtro o la interfaz del controlador intermedio de filtro que está justo debajo del módulo de filtro actual. Si no hay ningún módulo de filtro o interfaces de controlador intermedio de filtro instaladas a través del adaptador de miniporte físico o del controlador intermedio MUX de nivel superior, este miembro contiene la interfaz de red NET_LUID del adaptador de miniport físico subyacente o el miniporte virtual del controlador intermedio MUX de nivel superior.

Flags

Reservado para uso futuro.

HDSplitCurrentConfig

Puntero a un NDIS_HD_SPLIT_CURRENT_CONFIG estructura. Esta estructura especifica la configuración actual de división de datos de encabezado del adaptador de minipuerto subyacente. Este valor puede ser NULL si el adaptador de miniporte no admite la división de datos de encabezado.

ReceiveFilterCapabilities

Puntero a un NDIS_RECEIVE_FILTER_CAPABILITIES estructura. Esta estructura especifica las funcionalidades de filtrado genéricas que están habilitadas actualmente en el adaptador de minipuerto subyacente. Este valor puede ser NULL si el adaptador de minipuerto no admite el filtrado de recepción.

MiniportPhysicalDeviceObject

Puntero a una estructura de DEVICE_OBJECT . Esta estructura representa el dispositivo físico para el adaptador de minipuerto subyacente.

NicSwitchCapabilities

Puntero a un NDIS_NIC_SWITCH_CAPABILITIES estructura. Esta estructura especifica las funcionalidades del conmutador NIC del adaptador de miniport subyacente. Este valor puede ser NULL si el adaptador de minipuerto no admite características de conmutador NIC.

BaseMiniportIfConnectorPresent

Valor booleano que, si se establece en TRUE, indica si un conector de interfaz de red (si) está presente en el adaptador de red subyacente. Este valor debe establecerse en TRUE para un adaptador físico.

SriovCapabilities

Puntero a una estructura de NDIS_SRIOV_CAPABILITIES . Esta estructura especifica las funcionalidades de virtualización de E/S raíz única (SR-IOV) que están habilitadas actualmente en el adaptador de miniport subyacente. Este valor puede ser NULL si el adaptador de minipuerto no admite características SR-IOV.

Para obtener más información, consulte Virtualización de E/S raíz única (SR-IOV).

NicSwitchArray

Puntero a una estructura de NDIS_NIC_SWITCH_INFO_ARRAY . Esta matriz enumera los conmutadores NIC que se han creado en el adaptador de minipuerto. Los conmutadores NIC solo se pueden crear si sr-IOV es compatible y está habilitado en el adaptador.

Nota A partir de Windows Server 2012, Windows solo admite el conmutador NIC predeterminado que se crea en el adaptador de miniporte de función física (PF). Por lo tanto, esta matriz solo puede contener un elemento.
 

Comentarios

Para definir parámetros de asociación de módulos de filtro, NDIS pasa un puntero a una estructura de NDIS_FILTER_ATTACH_PARAMETERS a la función FilterAttach .

Los controladores de filtro deben evitar emitir consultas de OID innecesarias. En su lugar, use la información de NDIS_FILTER_ATTACH_PARAMETERS, cuando esté disponible, para obtener información sobre los controladores subyacentes.

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

DEVICE_OBJECT

FilterAttach

NDIS_HD_SPLIT_CURRENT_CONFIG

NDIS_MEDIUM

NDIS_MINIPORT_ADAPTER_NATIVE_802_11_ATTRIBUTES

NDIS_NIC_SWITCH_CAPABILITIES

NDIS_NIC_SWITCH_INFO_ARRAY

NDIS_OBJECT_HEADER

NDIS_OFFLOAD

NDIS_RECEIVE_FILTER_CAPABILITIES

NDIS_SRIOV_CAPABILITIES

NET_IF_MEDIA_CONNECT_STATE

NET_LUID

OID_802_3_CURRENT_ADDRESS

OID_GEN_LINK_SPEED_EX

OID_GEN_MEDIA_CONNECT_STATUS_EX

OID_GEN_MEDIA_DUPLEX_STATE

OID_GEN_PHYSICAL_MEDIUM

UNICODE_STRING