NdisAllocateNetBufferListContext-Funktion (ndis/nblapi.h)
Rufen Sie die NdisAllocateNetBufferListContext-Funktion auf, um mehr Kontextbereich in der NET_BUFFER_LIST_CONTEXT-Struktur eines zuzuweisen.
NET_BUFFER_LIST Struktur.
Syntax
NDIS_EXPORTED_ROUTINE NDIS_STATUS NdisAllocateNetBufferListContext(
[in] NET_BUFFER_LIST *NetBufferList,
[in] USHORT ContextSize,
[in] USHORT ContextBackFill,
[in] ULONG PoolTag
);
Parameter
[in] NetBufferList
Ein Zeiger auf eine zuvor zugeordnete NET_BUFFER_LIST-Struktur.
[in] ContextSize
Die Menge des Kontextbereichs, der in der NET_BUFFER_LIST_CONTEXT-Struktur zugeordnet werden soll. Dieser Betrag muss ein Vielfaches des durch definierten sizeof(void*)
Werts sein.
[in] ContextBackFill
Die Menge des Arbeitsspeichers zusätzlich zum Wert von ContextSize, der zugeordnet werden soll, wenn NDIS Arbeitsspeicher zuweisen muss, um die Anforderung zu erfüllen. Dieser Betrag muss ein Vielfaches des durch definierten sizeof(void*)
Werts sein.
[in] PoolTag
Ein Kernelpooltag, das NDIS verwendet, um den Arbeitsspeicher für die NET_BUFFER_LIST_CONTEXT-Struktur zuzuweisen, wenn eine Zuordnung erforderlich ist. Das Tag ist eine durch einfache Anführungszeichen getrennte Zeichenfolge mit bis zu vier Zeichen, die normalerweise in umgekehrter Reihenfolge angegeben sind. Das Kernelpooltag hilft NDIS dabei, den Besitzer des Arbeitsspeichers zu identifizieren.
Rückgabewert
NdisAllocateNetBufferListContext gibt eine der folgenden Rückgaben zurück:
Rückgabecode | Beschreibung |
---|---|
|
NdisAllocateNetBufferListContext hat den Kontextbereich erfolgreich zugewiesen, indem der Wert des Offset-Elements der NET_BUFFER_LIST_CONTEXT-Struktur reduziert oder neuer Arbeitsspeicher zugewiesen wurde. |
|
Fehler bei NdisAllocateNetBufferListContext aufgrund unzureichender Ressourcen. |
|
NdisAllocateNetBufferListContext ist aus anderen Gründen als unzureichenden Ressourcen fehlgeschlagen. |
Hinweise
Wenn genügend nicht verwendeter Kontextspeicher in der NET_BUFFER_LIST_CONTEXT-Struktur verfügbar ist, um die Anforderung zu erfüllen, reduziert NdisAllocateNetBufferListContext einfach den Wert des Offset-Elements in der NET_BUFFER_LIST_CONTEXT-Struktur. Andernfalls belegt NDIS neuen Arbeitsspeicher für den Kontextbereich. Sie können ContextBackFill angeben, um zusätzlichen Arbeitsspeicher zuzuweisen, damit der nächste Aufruf von NdisAllocateNetBufferListContext keinen Arbeitsspeicher zuweisen muss.
Rufen Sie die folgenden NdisFreeNetBufferListContext-Funktion , um den Kontextbereich in der NET_BUFFER_LIST_CONTEXT-Struktur freizugeben, die mit NdisAllocateNetBufferListContext zugeordnet wurde.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Unterstützt in NDIS 6.0 und höher. |
Zielplattform | Universell |
Header | ndis/nblapi.h (include ndis.h) |
Bibliothek | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
DDI-Complianceregeln | Irql_NetBuffer_Function(ndis) |