estrutura NDIS_HD_SPLIT_ATTRIBUTES (ndis.h)
A estrutura NDIS_HD_SPLIT_ATTRIBUTES define atributos de divisão de dados de cabeçalho, se houver, associados a um adaptador de miniporta.
Sintaxe
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;
Membros
Header
A estrutura NDIS_OBJECT_HEADER para a estrutura de características do provedor (NDIS_HD_SPLIT_ATTRIBUTES). O driver define o membro Type da estrutura especificada por Header como NDIS_OBJECT_TYPE_HD_SPLIT_ATTRIBUTES, o membro Revision como NDIS_OBJECT_HD_SPLIT_ATTRIBUTES_REVISION_1 e o membro Size para NDIS_SIZEOF_HD_SPLIT_ATTRIBUTES_REVISION_1.
HardwareCapabilities
Os recursos de hardware de divisão de dados de cabeçalho compatíveis com o adaptador de miniporto. Esses recursos devem incluir recursos que estão desabilitados atualmente pelas configurações de arquivo INF ou por meio da página Propriedades avançadas . O valor de HardwareCapabilities é um OR bit a bit dos seguintes sinalizadores:
NDIS_HD_SPLIT_CAPS_SUPPORTS_HEADER_DATA_SPLIT
O adaptador de miniporta pode dividir o cabeçalho e os dados em MDLs separados que atendem aos requisitos de suporte à divisão de dados de cabeçalho.
NDIS_HD_SPLIT_CAPS_SUPPORTS_IPV4_OPTIONS
O adaptador de miniporta pode dividir quadros Ethernet IPv4 que incluem opções IPv4. O adaptador de miniporta pode dar suporte à divisão de algumas opções IPv4 enquanto não divide outras.
NDIS_HD_SPLIT_CAPS_SUPPORTS_IPV6_EXTENSION_HEADERS
O adaptador de miniporta pode dividir quadros Ethernet IPv6 que incluem cabeçalhos de extensão IPv6. O adaptador de miniporta pode dar suporte a alguns cabeçalhos de extensão IPv6 sem dar suporte a outros.
NDIS_HD_SPLIT_CAPS_SUPPORTS_TCP_OPTIONS
O adaptador de miniporta pode dividir quadros TCP com outras opções de TCP, além da opção de carimbo de data/hora. O adaptador de miniporta pode dar suporte a algumas opções de TCP e não dar suporte a outras.
CurrentCapabilities
Os recursos atuais de divisão de dados de cabeçalho compatíveis com o adaptador de miniporta. O driver de miniporta usa os mesmos sinalizadores definidos para o membro HardwareCapabilities . Nesse caso, os sinalizadores são definidos para indicar os recursos atuais que dependem das definições de configuração atuais.
HDSplitFlags
Um conjunto de sinalizadores que controlam a status de divisão de dados de cabeçalho para um adaptador de miniporto. O driver de miniporta deve definir esse membro como zero antes de chamar o Função NdisMSetMiniportAttributes . Depois que NdisMSetMiniportAttributes retornar com êxito, o driver deverá marcar os sinalizadores e configurar o hardware adequadamente. O NDIS define esse membro com um OR bit a bit dos seguintes sinalizadores:
NDIS_HD_SPLIT_ENABLE_HEADER_DATA_SPLIT
Se esse sinalizador estiver definido, o driver de miniporta deverá habilitar a divisão de dados de cabeçalho no hardware. Caso contrário, a divisão de dados de cabeçalho será desabilitada. Se o computador usar a divisão de dados de cabeçalho e o driver de miniporte também definir o sinalizador NDIS_HD_SPLIT_CAPS_SUPPORTS_HEADER_DATA_SPLIT no membro CurrentCapabilities , o NDIS definirá NDIS_HD_SPLIT_ENABLE_HEADER_DATA_SPLIT.
BackfillSize
O tamanho do arquivo de fundo, em bytes, para a parte de dados de um quadro dividido. O driver de miniporta deve ser definido
BackfillSize para zero antes de chamar NdisMSetMiniportAttributes. O NDIS define esse membro se o driver de miniporta precisar pré-alocar o armazenamento de backfill na parte de dados para quadros divididos. Depois que NdisMSetMiniportAttributes retornar com êxito , o driver deverá usar o valor BackfillSize definido pelo NDIS para pré-alocar os buffers de dados.
MaxHeaderSize
O tamanho máximo, em bytes, para a parte de cabeçalho de um quadro dividido. O driver de miniporto deve definir MaxHeaderSize como zero antes de chamar NdisMSetMiniportAttributes. O NDIS define esse membro como o tamanho máximo do buffer de cabeçalho para quadros divididos. Depois que NdisMSetMiniportAttributes retornar com êxito , o driver deverá usar o valor fornecido pelo NDIS.
Comentários
Para dar suporte à divisão de dados de cabeçalho, um driver de miniporto passa um ponteiro para um NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES estrutura no parâmetro MiniportAttributes do Função NdisMSetMiniportAttributes . O membro HDSplitAttributes do NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES contém um ponteiro para a estrutura NDIS_HD_SPLIT_ATTRIBUTES. Um driver de miniporto chama NdisMSetMiniportAttributes de sua função MiniportInitializeEx durante a inicialização.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Com suporte no NDIS 6.1 e posterior. |
Cabeçalho | ndis.h (inclua Ndis.h) |