estructura NDIS_HD_SPLIT_ATTRIBUTES (ndis.h)
La estructura NDIS_HD_SPLIT_ATTRIBUTES define los atributos de división de datos de encabezado, si los hay, que están asociados a un adaptador de minipuerto.
Sintaxis
typedef struct _NDIS_HD_SPLIT_ATTRIBUTES {
NDIS_OBJECT_HEADER Header;
ULONG HardwareCapabilities;
ULONG CurrentCapabilities;
ULONG HDSplitFlags;
ULONG BackfillSize;
ULONG MaxHeaderSize;
} NDIS_HD_SPLIT_ATTRIBUTES, *PNDIS_HD_SPLIT_ATTRIBUTES;
Miembros
Header
Estructura NDIS_OBJECT_HEADER de la estructura de características del proveedor (NDIS_HD_SPLIT_ATTRIBUTES). El controlador establece el miembro Type de la estructura que Header especifica para NDIS_OBJECT_TYPE_HD_SPLIT_ATTRIBUTES, el miembro Revision en NDIS_OBJECT_HD_SPLIT_ATTRIBUTES_REVISION_1 y el miembro Size en NDIS_SIZEOF_HD_SPLIT_ATTRIBUTES_REVISION_1.
HardwareCapabilities
Las funcionalidades de hardware de división de datos de encabezado que admite el adaptador de miniporte. Estas funcionalidades deben incluir funcionalidades que están deshabilitadas actualmente por la configuración de archivos INF o a través de la página Propiedades avanzadas . El valor de HardwareCapabilities es un OR bit a bit de las marcas siguientes:
NDIS_HD_SPLIT_CAPS_SUPPORTS_HEADER_DATA_SPLIT
El adaptador de minipuerto puede dividir el encabezado y los datos en MDL independientes que cumplan los requisitos de compatibilidad con la división de datos de encabezado.
NDIS_HD_SPLIT_CAPS_SUPPORTS_IPV4_OPTIONS
El adaptador de minipuerto puede dividir fotogramas Ethernet IPv4 que incluyen opciones IPv4. El adaptador de minipuerto puede admitir la división de algunas opciones de IPv4, sin dividir otras.
NDIS_HD_SPLIT_CAPS_SUPPORTS_IPV6_EXTENSION_HEADERS
El adaptador de minipuerto puede dividir marcos Ethernet IPv6 que incluyen encabezados de extensión IPv6. El adaptador de minipuerto puede admitir algunos encabezados de extensión IPv6, a la vez que no admite otros.
NDIS_HD_SPLIT_CAPS_SUPPORTS_TCP_OPTIONS
El adaptador de minipuerto puede dividir fotogramas TCP con otras opciones TCP, además de la opción timestamp. El adaptador de minipuerto puede admitir algunas opciones tcp y no admitir otras.
CurrentCapabilities
Las funcionalidades actuales de división de datos de encabezado que admite el adaptador de miniporte. El controlador de minipuerto usa las mismas marcas definidas para el miembro HardwareCapabilities . En este caso, las marcas se establecen para indicar las funcionalidades actuales que dependen de las opciones de configuración actuales.
HDSplitFlags
Conjunto de marcas que controlan el estado de la división de datos de encabezado para un adaptador de minipuerto. El controlador de minipuerto debe establecer este miembro en cero antes de llamar a Función NdisMSetMiniportAttributes . Después de que NdisMSetMiniportAttributes vuelva correctamente, el controlador debe comprobar las marcas y configurar el hardware en consecuencia. NDIS establece este miembro con un OR bit a bit de las marcas siguientes:
NDIS_HD_SPLIT_ENABLE_HEADER_DATA_SPLIT
Si se establece esta marca, el controlador de minipuerto debe habilitar la división de datos de encabezado en el hardware. De lo contrario, la división de datos de encabezado está deshabilitada. Si el equipo usa la división de datos de encabezado y el controlador de minipuerto también establece la marca de NDIS_HD_SPLIT_CAPS_SUPPORTS_HEADER_DATA_SPLIT en el miembro CurrentCapabilities , NDIS establece NDIS_HD_SPLIT_ENABLE_HEADER_DATA_SPLIT.
BackfillSize
Tamaño de reposición, en bytes, para la parte de datos de un marco dividido. El controlador de minipuerto debe establecerse.
BackfillSize en cero antes de llamar a NdisMSetMiniportAttributes. NDIS establece este miembro si el controlador de minipuerto debe asignar previamente el almacenamiento de reposición en la parte de datos para fotogramas divididos. Después de que NdisMSetMiniportAttributes devuelva correctamente, el controlador debe usar el valor BackfillSize que NDIS establece para asignar previamente los búferes de datos.
MaxHeaderSize
Tamaño máximo, en bytes, para la parte de encabezado de un marco dividido. El controlador de miniport debe establecer MaxHeaderSize en cero antes de llamar a NdisMSetMiniportAttributes. NDIS establece este miembro en el tamaño máximo del búfer de encabezado para los fotogramas divididos. Después de que NdisMSetMiniportAttributes devuelva correctamente, el controlador debe usar el valor proporcionado por NDIS.
Comentarios
Para admitir la división de datos de encabezado, un controlador de minipuerto pasa un puntero a un NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES estructura en el parámetro MiniportAttributes del Función NdisMSetMiniportAttributes . El miembro HDSplitAttributes de NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES contiene un puntero a la estructura NDIS_HD_SPLIT_ATTRIBUTES. Un controlador de minipuerto llama a NdisMSetMiniportAttributes desde su función MiniportInitializeEx durante la inicialización.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Compatible con NDIS 6.1 y versiones posteriores. |
Encabezado | ndis.h (incluya Ndis.h) |