Função NdisAdvanceNetBufferDataStart (ndis/nblapi.h)
Chame a função NdisAdvanceNetBufferDataStart para liberar o espaço de dados usado que foi adicionado com o Função NdisRetreatNetBufferDataStart .
Sintaxe
NDIS_EXPORTED_ROUTINE VOID NdisAdvanceNetBufferDataStart(
[in] NET_BUFFER *NetBuffer,
[in] ULONG DataOffsetDelta,
[in] BOOLEAN FreeMdl,
[in, optional] NET_BUFFER_FREE_MDL *FreeMdlHandler
);
Parâmetros
[in] NetBuffer
Um ponteiro para uma estrutura de NET_BUFFER alocada anteriormente.
[in] DataOffsetDelta
A quantidade de espaço de dados usado para liberar. O NDIS ajusta o valor do membro DataOffset da estrutura NET_BUFFER adequadamente.
[in] FreeMdl
Um valor BOOLEAN que, se TRUE, solicita que o NDIS libere quaisquer MDLs que não são utilizados na operação avançada. Se FreeMdl for FALSE, o NDIS reterá MDLs não utilizados para uso em operações de retirada subsequentes.
[in, optional] FreeMdlHandler
Um ponto de entrada opcional para uma função NetFreeMdl . Se o chamador especificar um ponto de entrada para a função NetFreeMdl , o NDIS chamará NetFreeMdl para liberar um MDL e memória.
Retornar valor
Nenhum
Comentários
Se a memória alocada pelo NDIS atender a uma chamada correspondente para o A função NdisRetreatNetBufferDataStart e NdisAdvanceNetBufferDataStart libera a memória alocada por NdisRetreatNetBufferDataStart . Caso contrário, a memória permanecerá no MDL e somente o valor do membro DataOffset da estrutura NET_BUFFER será modificado.
O NDIS chama a função NetFreeMdl especificada em FreeMdl se NdisAdvanceNetBufferDataStart precisar liberar memória. O NDIS chama NetFreeMdl apenas para liberar os MDLs e a memória alocados pelo driver na função NetAllocateMdl .
Quando os drivers de protocolo chamam NdisAdvanceNetBufferDataStart no caminho de recebimento para acessar os vários cabeçalhos de transporte, a cadeia de MDL não deve ser modificada e FreeMdl é FALSE.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Com suporte no NDIS 6.0 e posterior. |
Plataforma de Destino | Universal |
Cabeçalho | ndis/nblapi.h (inclua ndis.h) |
Biblioteca | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
Regras de conformidade de DDI | Irql_NetBuffer_Function(ndis) |