Função FwpsAllocateNetBufferAndNetBufferList0 (fwpsk.h)
A função FwpsAllocateNetBufferAndNetBufferList0 aloca uma nova estrutura de NET_BUFFER_LIST.
Sintaxe
NTSTATUS FwpsAllocateNetBufferAndNetBufferList0(
[in] NDIS_HANDLE poolHandle,
[in] USHORT contextSize,
[in] USHORT contextBackFill,
[in, optional] MDL *mdlChain,
[in] ULONG dataOffset,
[in] SIZE_T dataLength,
[out] NET_BUFFER_LIST **netBufferList
);
Parâmetros
[in] poolHandle
Um identificador de pool NET_BUFFER_LIST obtido de uma chamada anterior para a função NdisAllocateNetBufferListPool.
[in] contextSize
O tamanho, em bytes, do espaço de dados usado na estrutura de NET_BUFFER_LIST_CONTEXT a ser reservada para o driver de texto explicativo. O valor desse parâmetro deve ser um múltiplo do valor definido por MEMORY_ALLOCATION_ALIGNMENT.
[in] contextBackFill
O tamanho, em bytes, do espaço de dados não utilizado (espaço em backfill) exigido pelo driver de texto explicativo. A função FwpsAllocateNetBufferAndNetBufferList0 adiciona esse valor ao valor especificado no parâmetro ContextSize e aloca espaço adicional. O valor desse parâmetro deve ser um múltiplo do valor definido por MEMORY_ALLOCATION_ALIGNMENT.
[in, optional] mdlChain
Um ponteiro para uma cadeia de MDL usada para inicializar a estrutura de NET_BUFFER pré-alocada. Esse parâmetro é opcional e pode ser NULL.
[in] dataOffset
O deslocamento inicial, em bytes, desde o início do buffer até o início do espaço de dados usado na cadeia de MDL. O espaço de dados antes desse deslocamento é espaço de dados não utilizado. Portanto, esse valor também representa a quantidade inicial de espaço de backfill disponível na cadeia de MDL.
[in] dataLength
O comprimento, em bytes, do espaço de dados usado na cadeia de MDL.
[out] netBufferList
Um ponteiro para uma variável que recebe um ponteiro para a nova estrutura NET_BUFFER_LIST.
Valor de retorno
A função FwpsAllocateNetBufferAndNetBufferList0 retorna um dos seguintes códigos NTSTATUS.
Código de retorno | Descrição |
---|---|
|
A nova estrutura de NET_BUFFER_LIST foi alocada com êxito. |
|
Ocorreu um erro. |
Observações
Um driver explicativo chama a função FwpsAllocateNetBufferAndNetBufferList0 para alocar uma nova estrutura de NET_BUFFER_LIST.
Essa função é um wrapper ao redor do função de NdisAllocateNetBufferAndNetBufferList, mas é especializada para uso por funções de injeção de pacote de WFP.
Depois que os dados descritos pela nova estrutura de NET_BUFFER_LIST tiverem sido injetados com êxito na pilha de rede, o driver de texto explicativo libera a nova estrutura de NET_BUFFER_LIST chamando o função FwpsFreeNetBufferList0.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Disponível a partir do Windows Vista. |
da Plataforma de Destino | Universal |
cabeçalho | fwpsk.h (inclua Fwpsk.h) |
biblioteca | Fwpkclnt.lib |
IRQL | <= DISPATCH_LEVEL |