NdisAllocateNetBufferList-Funktion (ndis/nblapi.h)

Rufen Sie die NdisAllocateNetBufferList-Funktion auf, um eine NET_BUFFER_LIST-Struktur aus einem NET_BUFFER_LIST-Strukturpool zuzuordnen und zu initialisieren.

Syntax

NDIS_EXPORTED_ROUTINE NET_BUFFER_LIST * NdisAllocateNetBufferList(
  [in] NDIS_HANDLE PoolHandle,
  [in] USHORT      ContextSize,
  [in] USHORT      ContextBackFill
);

Parameter

[in] PoolHandle

Ein NET_BUFFER_LIST Strukturpoolhandle, das zuvor von einem Aufruf von zurückgegeben wurde NdisAllocateNetBufferListPool.

[in] ContextSize

Die Menge des verwendeten Datenspeicherplatzes in der NET_BUFFER_LIST_CONTEXT-Struktur , die für den Aufrufer reserviert werden soll. ContextSize muss ein Vielfaches des durch MEMORY_ALLOCATION_ALIGNMENT definierten Werts sein.

[in] ContextBackFill

Die Menge des nicht verwendeten Datenspeicherplatzes (Nachfüllspeicher), den der Aufrufer benötigt. NDIS fügt diesen Wert zu ContextSize hinzu und weist zusätzlichen Speicherplatz zu. ContextBackFill muss ein Vielfaches des durch MEMORY_ALLOCATION_ALIGNMENT definierten Werts sein.

Rückgabewert

NdisAllocateNetBufferList gibt einen Zeiger auf die zugeordnete NET_BUFFER_LIST-Struktur zurück. Wenn die Zuordnung nicht erfolgreich war, ist dieser Zeiger NULL.

Hinweise

Sie können NdisAllocateNetBufferList oder aufrufen. NdisAllocateNetBufferAndNetBufferList-Funktion zum Zuordnen einer NET_BUFFER_LIST-Struktur aus einem Pool.

Beachten SieNET_BUFFER - und NET_BUFFER_LIST strukturen aus einem NDIS-Pufferpool zugeordnet werden müssen. Ein Treiber darf keine NET_BUFFER_LIST- oder NET_BUFFER-Struktur aus seinem privaten Speicherpool oder Stapel zuordnen und initialisieren.
 
Wenn Sie NdisAllocateNetBufferList aufrufen und der NET_BUFFER_LIST-Strukturpool durch Aufrufen der Die NdisAllocateNetBufferListPool-Funktion mit dem fAllocateNetBuffer-Member der NET_BUFFER_LIST_POOL_PARAMETERS-Struktur , die auf TRUE festgelegt ist, NDIS weist eine NET_BUFFER_LIST, NET_BUFFER, MDL und Daten zu.

Rufen Sie die NdisFreeNetBufferList-Funktion auf, um eine NET_BUFFER_LIST-Struktur frei zu geben.

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), NdisAllocateNetBufferList2(ndis), NdisAllocateNetBufferList2_InitFail(ndis)

Weitere Informationen

NET_BUFFER

NET_BUFFER_LIST

NET_BUFFER_LIST_CONTEXT

NET_BUFFER_LIST_POOL_PARAMETERS

NdisAllocateNetBufferAndNetBufferList NdisAllocateNetBufferListPool

NdisFreeNetBufferList