Compartilhar via


Função FwpsAllocateNetBufferAndNetBufferList0 (fwpsk.h)

A função FwpsAllocateNetBufferAndNetBufferList0 aloca uma nova estrutura de NET_BUFFER_LIST .

ObservaçãoFwpsAllocateNetBufferAndNetBufferList0 é uma versão específica de FwpsAllocateNetBufferAndNetBufferList. Consulte Nomes de Version-Independent WFP e Direcionamento de versões específicas do Windows para obter mais informações.
 

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 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 de 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 back-fill 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 .

Retornar valor

A função FwpsAllocateNetBufferAndNetBufferList0 retorna um dos seguintes códigos NTSTATUS.

Código de retorno Descrição
STATUS_SUCCESS
A nova estrutura de NET_BUFFER_LIST foi alocada com êxito.
Outros códigos de status
Ocorreu um erro.

Comentários

Um driver de texto explicativo chama a função FwpsAllocateNetBufferAndNetBufferList0 para alocar uma nova estrutura de NET_BUFFER_LIST .

Essa função é um wrapper em torno do Função NdisAllocateNetBufferAndNetBufferList , mas é especializada para uso por funções de injeção de pacote 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
Cliente mínimo com suporte Disponível a partir do Windows Vista.
Plataforma de Destino Universal
Cabeçalho fwpsk.h (inclua Fwpsk.h)
Biblioteca Fwpkclnt.lib
IRQL <= DISPATCH_LEVEL

Confira também

FwpsFreeNetBufferList0

NET_BUFFER_LIST

NET_BUFFER_LIST_CONTEXT

NdisAllocateNetBufferAndNetBufferList NdisAllocateNetBufferListPool

Funções de injeção de pacote