NdisAllocateNetBufferListContext, fonction (ndis/nblapi.h)
Appelez la fonction NdisAllocateNetBufferListContext pour allouer plus d’espace de contexte dans la structure NET_BUFFER_LIST_CONTEXT d’un
NET_BUFFER_LIST structure.
Syntaxe
NDIS_EXPORTED_ROUTINE NDIS_STATUS NdisAllocateNetBufferListContext(
[in] NET_BUFFER_LIST *NetBufferList,
[in] USHORT ContextSize,
[in] USHORT ContextBackFill,
[in] ULONG PoolTag
);
Paramètres
[in] NetBufferList
Pointeur vers une structure NET_BUFFER_LIST précédemment allouée.
[in] ContextSize
Quantité d’espace de contexte à allouer dans la structure NET_BUFFER_LIST_CONTEXT. Ce montant doit être un multiple de la valeur définie par sizeof(void*)
.
[in] ContextBackFill
Quantité de mémoire, en plus de la valeur de ContextSize, à allouer si NDIS doit allouer de la mémoire pour répondre à la demande. Ce montant doit être un multiple de la valeur définie par sizeof(void*)
.
[in] PoolTag
Balise de pool de noyau que NDIS utilise pour allouer la mémoire à la structure NET_BUFFER_LIST_CONTEXT, si l’allocation est nécessaire. La balise est une chaîne, délimitée par des guillemets simples, avec jusqu’à quatre caractères, généralement spécifiés dans l’ordre inverse. La balise de pool de noyau aide NDIS à identifier le propriétaire de la mémoire.
Valeur retournée
NdisAllocateNetBufferListContext retourne l’un des éléments suivants :
Code de retour | Description |
---|---|
|
NdisAllocateNetBufferListContext a correctement alloué l’espace de contexte en réduisant la valeur du membre Offset de la structure NET_BUFFER_LIST_CONTEXT ou en allouant une nouvelle mémoire. |
|
NdisAllocateNetBufferListContext a échoué en raison de ressources insuffisantes. |
|
Échec de NdisAllocateNetBufferListContext pour des raisons autres que des ressources insuffisantes. |
Remarques
Si l’espace de contexte inutilisé disponible dans la structure NET_BUFFER_LIST_CONTEXT est suffisant pour satisfaire la demande, NdisAllocateNetBufferListContext réduit simplement la valeur du membre Offset dans la structure NET_BUFFER_LIST_CONTEXT. Sinon, NDIS alloue une nouvelle mémoire pour l’espace contextuel. Vous pouvez spécifier ContextBackFill pour allouer de la mémoire supplémentaire afin que l’appel suivant à NdisAllocateNetBufferListContext n’ait pas à allouer de mémoire.
Appelez le Fonction NdisFreeNetBufferListContext pour libérer l’espace de contexte dans la structure NET_BUFFER_LIST_CONTEXT qui a été allouée avec NdisAllocateNetBufferListContext.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Pris en charge dans NDIS 6.0 et versions ultérieures. |
Plateforme cible | Universal |
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) |
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour