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.
Valor de retorno
Nenhum
Observações
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 que outro driver alocou.
Por exemplo, o driver de uma NIC de DMA mestre de ônibus chama NdisAdjustMdlLength com descritores MDL que ele alocou para especificar o recebimento de MDLs em seu bloco de memória compartilhado. Antes que esse driver indique dados recebidos, ele chama NdisAdjustMdlLength para fazer com que o descritor MDL que ele incluirá na indicação de recebimento corresponda 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 no IRQL <= DISPATCH_LEVEL.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Com suporte no NDIS 6.0 e posterior. |
da Plataforma de Destino | Área de trabalho |
cabeçalho | ndis.h (inclua Ndis.h) |
IRQL | Qualquer nível (consulte a seção Comentários) |