Compartilhar via


Função FwpsReassembleForwardFragmentGroup0 (fwpsk.h)

A função FwpsReassembleForwardFragmentGroup0 monta uma lista de fragmentos de IP no caminho de dados de encaminhamento em um único pacote.

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

Sintaxe

NTSTATUS FwpsReassembleForwardFragmentGroup0(
  [in]           ADDRESS_FAMILY  addressFamily,
  [in, out]      NET_BUFFER_LIST *fragmentGroupNblChain,
  [in, optional] NDIS_HANDLE     netBufferAndNetBufferListPoolHandle,
  [in]           ULONG           dataBackFill,
  [in]           ULONG           flags,
  [out]          NET_BUFFER_LIST **reassembledNbl
);

Parâmetros

[in] addressFamily

Uma das seguintes famílias de endereços:

AF_INET

A família de endereços IPv4.

AF_INET6

A família de endereços IPv6.

[in, out] fragmentGroupNblChain

Um ponteiro para a cadeia de NET_BUFFER_LIST de fragmentos de IP a serem remontados em um único pacote. Para obter mais informações sobre o uso desse parâmetro, consulte Comentários.

[in, optional] netBufferAndNetBufferListPoolHandle

Um identificador de pool de estrutura de NET_BUFFER_LIST opcional que foi retornado anteriormente do Função NdisAllocateNetBufferListPool . O membro fAllocateNetBuffer da estrutura NET_BUFFER_LIST_POOL_PARAMETERS que o chamador passou para NdisAllocateNetBufferListPool deve ter sido definido como TRUE e o membro DataSize definido como zero. Se esse parâmetro for NULL, o NDIS usará um pool interno.

[in] dataBackFill

Se a alocação de espaço de dados não utilizado (espaço de backfill) for necessária, esse parâmetro especificará o número de bytes de espaço de dados não utilizado a ser alocado.

[in] flags

Reservado. Os drivers de texto explicativo devem definir esse parâmetro como zero.

[out] reassembledNbl

Um ponteiro para um ponteiro NET_BUFFER_LIST que recebe o endereço da lista de buffers de rede única remontada.

Retornar valor

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

Código de retorno Descrição
STATUS_SUCCESS
A lista de fragmentos de IP foi remontada com êxito em uma única estrutura de NET_BUFFER_LIST .
STATUS_FWP_TCPIP_NOT_READY
A pilha de rede TCP/IP não está pronta para executar a remontagem de pacotes. Esse erro poderá ocorrer se essa função for chamada antes de Tcpip.sys ser carregada ou depois que Tcpip.sys tiver sido descarregada.
Outros códigos de status
Ocorreu um erro.

Comentários

A função FwpsReassembleForwardFragmentGroup0 monta uma lista de fragmentos de IP no caminho de dados de encaminhamento, descrito por uma cadeia de NET_BUFFER_LIST , em um único pacote. O pacote remontado é uma única lista de buffers líquidos que contém um buffer líquido e faz referência à cadeia de fragmentos de entrada. Essa função normalmente é usada por firewalls de borda para inspecionar pacotes de rede.

A cadeia de entrada de fragmentos de IP, fragmentGroupNblChain, deve ser aquela indicada pela função de texto explicativo classifyFn para a camada FWPS_LAYER_IPFORWARD_V4 ou FWPS_LAYER_IPFORWARD_V6 quando o sinalizador FWP_CONDITION_FLAG_IS_FRAGMENT_GROUP é definido. Se esse não for o caso, o comportamento de FwpsReassembleForwardFragmentGroup0 será indefinido.

Chame a função FwpsFreeNetBufferList0 para liberar a estrutura de NET_BUFFER_LIST reassembledNbl e todas as estruturas de NET_BUFFER associadas e cadeias de MDL. FwpsFreeNetBufferList0 desreferencia a cadeia de fragmentos de entrada original.

Você pode usar o comando a seguir para exibir a configuração atual "Fragmentos Encaminhados por Grupo" para o sistema: netsh interface {ipv4|ipv6} mostrar global.

Como FwpsReassembleForwardFragmentGroup0 faz referência à cadeia de fragmentos de entrada, não é necessário que os textos explicativos referenciem ou clonem a cadeia antes de chamar essa função.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível a partir do Windows Server 2008.
Plataforma de Destino Universal
Cabeçalho fwpsk.h (inclua Fwpsk.h)
Biblioteca Fwpkclnt.lib
IRQL <= DISPATCH_LEVEL

Confira também

FwpsFreeNetBufferList0

NET_BUFFER

NET_BUFFER_LIST

NET_BUFFER_LIST_POOL_PARAMETERS

NdisAllocateNetBufferListPool

classifyFn