Macro NdisAdjustMdlLength (ndis.h)
A função NdisAdjustMdlLength modifica o comprimento dos dados associados a um MDL.
Sintaxe
void NdisAdjustMdlLength(
[in] _Mdl,
[in] _Length
);
Parâmetros
[in] _Mdl
Um ponteiro para uma MDL (lista de descritores de memória).
[in] _Length
O número de bytes de dados que o MDL descreve.
Retornar valor
Nenhum
Comentários
A função NdisAdjustMdlLength modifica o membro ByteCount de um MDL alocado chamando a função NdisAllocateMdl .
O chamador de NdisAdjustMdlLength pode passar apenas um descritor MDL que o chamador alocou. Ele não pode passar um descritor MDL alocado por outro driver.
Por exemplo, o driver de uma NIC de DMA master de barramento chama NdisAdjustMdlLength com descritores MDL alocados para especificar MDLs de recebimento em seu bloco de memória compartilhada. Antes que esse driver indique os dados recebidos, ele chama NdisAdjustMdlLength para tornar o descritor MDL que ele incluirá na indicação de recebimento corresponder ao tamanho dos dados recebidos se ele for menor que o tamanho do buffer de recebimento da NIC.
O comprimento passado para NdisAdjustMdlLength não pode ser maior do que o comprimento passado para NdisAllocateMdl quando o descritor MDL foi alocado.
O chamador de NdisAdjustMdlLength deve restaurar o comprimento para seu valor original antes de liberar o descritor MDL com NdisFreeMdl.
Os chamadores de NdisAdjustMdlLength podem ser executados em qualquer IRQL, mas normalmente são executados em IRQL <= DISPATCH_LEVEL.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Com suporte no NDIS 6.0 e posterior. |
Plataforma de Destino | Área de Trabalho |
Cabeçalho | ndis.h (inclua Ndis.h) |
IRQL | Qualquer nível (consulte a seção Comentários) |