FwpsReassembleForwardFragmentGroup0, fonction (fwpsk.h)
La fonction FwpsReassembleForwardFragmentGroup0 assemble une liste de fragments IP dans le chemin de données de transfert en un seul paquet.
Syntaxe
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
);
Paramètres
[in] addressFamily
Une des familles d’adresses suivantes :
AF_INET
Famille d’adresses IPv4.
AF_INET6
Famille d’adresses IPv6.
[in, out] fragmentGroupNblChain
Pointeur vers la chaîne NET_BUFFER_LIST de fragments IP à réassembler en un seul paquet. Pour plus d’informations sur l’utilisation de ce paramètre, consultez Remarques.
[in, optional] netBufferAndNetBufferListPoolHandle
Handle de pool de structures NET_BUFFER_LIST facultatif qui a été retourné précédemment à partir du fonction NdisAllocateNetBufferListPool. Le membre fAllocateNetBuffer de la structure NET_BUFFER_LIST_POOL_PARAMETERS que l’appelant a passée à NdisAllocateNetBufferListPool doit avoir été défini sur TRUE, et le membre DataSize défini sur zéro. Si ce paramètre est NULL, NDIS utilise un pool interne.
[in] dataBackFill
Si l’allocation d’espace de données inutilisé (espace de remplissage) est requise, ce paramètre spécifie le nombre d’octets d’espace de données inutilisé à allouer.
[in] flags
Réservé. Les pilotes de légende doivent définir ce paramètre sur zéro.
[out] reassembledNbl
Pointeur vers un pointeur NET_BUFFER_LIST qui reçoit l’adresse de la liste de mémoires tampons réseau reassembées.
Valeur de retour
La fonction FwpsReassembleForwardFragmentGroup0 retourne l’un des codes NTSTATUS suivants.
Retourner le code | Description |
---|---|
|
La liste des fragments IP a été réassemblage en une seule structure de NET_BUFFER_LIST. |
|
La pile réseau TCP/IP n’est pas prête à effectuer une réassemblage de paquets. Cette erreur peut se produire si cette fonction est appelée avant Tcpip.sys est chargée, ou après Tcpip.sys a été déchargée. |
|
Une erreur s’est produite. |
Remarques
La fonction FwpsReassembleForwardFragmentGroup0 assemble une liste de fragments IP dans le chemin de données de transfert, décrite par une chaîne de NET_BUFFER_LIST, en un seul paquet. Le paquet réassembled est une seule liste de mémoires tampons nettes qui contient une mémoire tampon nette et fait référence à la chaîne de fragments d’entrée. Cette fonction est généralement utilisée par les pare-feu de périphérie pour inspecter les paquets réseau.
La chaîne d’entrée de fragments IP, fragmentGroupNblChain, doit être celle indiquée par la fonction de légende classifierFn sur la couche FWPS_LAYER_IPFORWARD_V4 ou FWPS_LAYER_IPFORWARD_V6 lorsque l’indicateur de FWP_CONDITION_FLAG_IS_FRAGMENT_GROUP est défini. Si ce n’est pas le cas, le comportement de FwpsReassembleForwardFragmentGroup0 n’est pas défini.
Appelez la fonction FwpsFreeNetBufferList0 pour libérer la structure réassembledNbl NET_BUFFER_LIST et toutes les structures NET_BUFFER associées et chaînes MDL. FwpsFreeNetBufferList0 déréférence la chaîne de fragments d’entrée d’origine.
Vous pouvez utiliser la commande suivante pour afficher le paramètre actuel « Fragments transférés de groupe » pour le système : interface netsh {ipv4|ipv6} affiche lesglobales.
Étant donné que FwpsReassembleForwardFragmentGroup0 fait référence à la chaîne de fragments d’entrée, il n’est pas nécessaire que les légendes référencent ou clonent la chaîne avant d’appeler cette fonction.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Disponible à partir de Windows Server 2008. |
plateforme cible | Universel |
d’en-tête | fwpsk.h (include Fwpsk.h) |
bibliothèque | Fwpkclnt.lib |
IRQL | <= DISPATCH_LEVEL |
Voir aussi
NET_BUFFER_LIST_POOL_PARAMETERS
NdisAllocateNetBufferListPool