Funzione NdisAllocateNetBufferListContext (ndis/nblapi.h)
Chiamare la funzione NdisAllocateNetBufferListContext per allocare più spazio di contesto nella struttura NET_BUFFER_LIST_CONTEXT di un oggetto
NET_BUFFER_LIST struttura.
Sintassi
NDIS_EXPORTED_ROUTINE NDIS_STATUS NdisAllocateNetBufferListContext(
[in] NET_BUFFER_LIST *NetBufferList,
[in] USHORT ContextSize,
[in] USHORT ContextBackFill,
[in] ULONG PoolTag
);
Parametri
[in] NetBufferList
Puntatore a una struttura NET_BUFFER_LIST allocata in precedenza.
[in] ContextSize
Quantità di spazio di contesto da allocare nella struttura NET_BUFFER_LIST_CONTEXT. Questa quantità deve essere un multiplo del valore definito da sizeof(void*)
.
[in] ContextBackFill
Quantità di memoria, oltre al valore di ContextSize, da allocare se NDIS deve allocare memoria per soddisfare la richiesta. Questa quantità deve essere un multiplo del valore definito da sizeof(void*)
.
[in] PoolTag
Tag del pool di kernel usato da NDIS per allocare la memoria per la struttura NET_BUFFER_LIST_CONTEXT, se è necessaria l'allocazione. Il tag è una stringa, delimitata da virgolette singole, con un massimo di quattro caratteri, in genere specificato in ordine inverso. Il tag del pool di kernel consente a NDIS di identificare il proprietario della memoria.
Valore restituito
NdisAllocateNetBufferListContext restituisce uno dei valori seguenti:
Codice restituito | Descrizione |
---|---|
|
NdisAllocateNetBufferListContext allocato correttamente lo spazio di contesto riducendo il valore del membro Offset della struttura NET_BUFFER_LIST_CONTEXT o allocando nuova memoria. |
|
NdisAllocateNetBufferListContext non è riuscito a causa di risorse insufficienti. |
|
NdisAllocateNetBufferListContext non è riuscito per motivi diversi da risorse insufficienti. |
Commenti
Se nella struttura NET_BUFFER_LIST_CONTEXT è disponibile spazio di contesto inutilizzato sufficiente per soddisfare la richiesta, NdisAllocateNetBufferListContext riduce semplicemente il valore del membro Offset nella struttura NET_BUFFER_LIST_CONTEXT. In caso contrario, NDIS alloca nuova memoria per lo spazio di contesto. È possibile specificare ContextBackFill per allocare memoria aggiuntiva in modo che la chiamata successiva a NdisAllocateNetBufferListContext non deve allocare memoria.
Chiamare il Funzione NdisFreeNetBufferListContext per rilasciare lo spazio di contesto nella struttura NET_BUFFER_LIST_CONTEXT allocata con NdisAllocateNetBufferListContext.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Supportato in NDIS 6.0 e versioni successive. |
Piattaforma di destinazione | Universale |
Intestazione | ndis/nblapi.h (include ndis.h) |
Libreria | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
Regole di conformità DDI | Irql_NetBuffer_Function(ndis) |