NdisAllocateReassembledNetBufferList, fonction (ndis/nblapi.h)
Appelez la fonction NdisAllocateReassembledNetBufferList pour réassembler une structure de NET_BUFFER_LIST fragmentée.
Syntaxe
NDIS_EXPORTED_ROUTINE NET_BUFFER_LIST * NdisAllocateReassembledNetBufferList(
NET_BUFFER_LIST *FragmentNetBufferList,
[in, optional] NDIS_HANDLE NetBufferAndNetBufferListPoolHandle,
[in] ULONG StartOffset,
[in] ULONG DataOffsetDelta,
[in] ULONG DataBackFill,
[in] ULONG AllocateReassembleFlags
);
Paramètres
FragmentNetBufferList
Pointeur vers la structure NET_BUFFER_LIST à réassembler.
[in, optional] NetBufferAndNetBufferListPoolHandle
Handle de pool de structures NET_BUFFER_LIST 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] StartOffset
Quantité de données à ignorer au début de chaque structure NET_BUFFER source. Cette quantité est en plus de la valeur spécifiée dans le membre dataOffset de la structure NET_BUFFER.
[in] DataOffsetDelta
Nombre d’octets de espace de données utilisé à ajouter dans la structure de NET_BUFFER réassemble.
[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 de espace de données inutilisé en plus de DataOffsetDelta à allouer.
[in] AllocateReassembleFlags
Indicateurs NDIS qui peuvent être combinés à une opération OR. Définissez ce paramètre sur zéro. Il n’existe actuellement aucun indicateur défini pour cette fonction.
Valeur de retour
Si l’opération de réassemble réussit, NdisAllocateReassembledNetBufferList retourne une structure NET_BUFFER_LIST réassembled. Si l’opération échoue, elle retourne NULL .
Remarques
NdisAllocateReassembledNetBufferList alloue, initialise et retourne une nouvelle structure NET_BUFFER_LIST qui inclut une structure NET_BUFFER et une chaîne MDL. La nouvelle structure NET_BUFFER_LIST décrit les mêmes données que la structure NET_BUFFER_LIST source fragmentée que le pilote a passée à FragmentéNetBufferList. Après avoir ignoré le nombre d’octets spécifiés dans startOffset dans chaque structure de NET_BUFFER fragmentée, NDIS concatène les données restantes dans chaque structure de NET_BUFFER fragmentée en une structure NET_BUFFER réassemblée. Les structures de NET_BUFFER_LIST reassembled n’incluent pas de structures initiales structure NET_BUFFER_LIST_CONTEXT.
Appeler le fonction NdisFreeReassembledNetBufferList pour libérer une structure NET_BUFFER_LIST réassembled et toutes les structures NET_BUFFER associées et chaînes MDL.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Prise en charge dans NDIS 6.0 et versions ultérieures. |
plateforme cible | Universel |
d’en-tête | ndis/nblapi.h (include ndis.h) |
bibliothèque | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
règles de conformité DDI | Irql_NetBuffer_Function(ndis), NdisAllocateReassembledNetBufferList(ndis), NdisAllocateReassembledNetBufferList_InitFail(ndis) |
Voir aussi
NET_BUFFER_LIST_POOL_PARAMETERS
NdisAllocateNetBufferListPool NdisFreeReassembledNetBufferList