MINIPORT_RETURN_NET_BUFFER_LISTS funzione di callback (ndis.h)
NDIS chiama la funzione MiniportReturnNetBufferLists per restituire la proprietà delle strutture NET_BUFFER_LIST , le strutture NET_BUFFER associate e qualsiasi MDL collegato a un driver miniport.
Sintassi
MINIPORT_RETURN_NET_BUFFER_LISTS MiniportReturnNetBufferLists;
void MiniportReturnNetBufferLists(
[in] NDIS_HANDLE MiniportAdapterContext,
[in] PNET_BUFFER_LIST NetBufferLists,
[in] ULONG ReturnFlags
)
{...}
Parametri
[in] MiniportAdapterContext
Handle in un'area di contesto allocata dal driver miniport nella funzione MiniportInitializeEx . Il driver miniport usa questa area di contesto per mantenere le informazioni sullo stato su un adattatore.
[in] NetBufferLists
Puntatore a un elenco collegato di strutture NET_BUFFER_LIST che NDIS torna al driver miniport. L'elenco collegato può contenere strutture NET_BUFFER_LIST da più chiamate precedenti al Funzione NdisMIndicateReceiveNetBufferLists .
[in] ReturnFlags
Flag NDIS che possono essere combinati con un'operazione OR. Questa funzione supporta il flag NDIS_RETURN_FLAGS_DISPATCH_LEVEL che, se impostato, indica che l'oggetto IRQL corrente è DISPATCH_LEVEL. Per altre informazioni su questo flag, vedere Dispatch IRQL Tracking.
Valore restituito
nessuno
Osservazioni
MiniportReturnNetBufferLists è una funzione necessaria per i driver miniport che indicano i dati di rete ricevuti con l'oggetto Funzione NdisMIndicateReceiveNetBufferLists . Quando un driver overlying chiama il La funzione NdisReturnNetBufferLists chiama la funzione MiniportReturnNetBufferLists del driver miniport che indica le strutture di NET_BUFFER_LIST specificate.
MiniportReturnNetBufferLists può preparare una struttura di NET_BUFFER_LIST restituita da usare in una successiva indicazione di ricezione. Anche se MiniportReturnNetBufferLists può restituire le strutture NET_BUFFER_LIST a un pool (ad esempio, potrebbe chiamare la funzione NdisFreeNetBufferList ), può essere più efficiente riutilizzare le strutture senza restituirle al pool.
NDIS chiama MiniportReturnNetBufferLists in IRQL<= DISPATCH_LEVEL.
Esempi
Per definire una funzione MiniportReturnNetBufferLists , è prima necessario fornire una dichiarazione di funzione che identifica il tipo di funzione che si sta definendo. Windows fornisce un set di tipi di funzione per i driver. La dichiarazione di una funzione usando i tipi di funzione consente l'analisi del codice per i driver, il verifica driver statico (SDV) e altri strumenti di verifica trovano errori ed è un requisito per la scrittura di driver per il sistema operativo Windows.Ad esempio, per definire una funzione MiniportReturnNetBufferLists denominata "MyReturnNetBufferLists ", usare il tipo MINIPORT_RETURN_NET_BUFFER_LISTS come illustrato nell'esempio di codice seguente:
MINIPORT_RETURN_NET_BUFFER_LISTS MyReturnNetBufferLists;
Implementare quindi la funzione come indicato di seguito:
_Use_decl_annotations_
VOID
MyReturnNetBufferLists(
NDIS_HANDLE MiniportAdapterContext,
PNET_BUFFER_LIST NetBufferLists,
ULONG ReturnFlags
)
{...}
Il tipo di funzione MINIPORT_RETURN_NET_BUFFER_LISTS è definito nel file di intestazione Ndis.h. Per identificare in modo più accurato gli errori durante l'esecuzione degli strumenti di analisi del codice, assicurarsi di aggiungere l'annotazione Use_decl_annotations alla definizione della funzione. L'annotazione Use_decl_annotations garantisce che vengano usate le annotazioni applicate al tipo di funzione MINIPORT_RETURN_NET_BUFFER_LISTS nel file di intestazione. Per altre informazioni sui requisiti per le dichiarazioni di funzione, vedere Dichiarazione di funzioni tramite tipi di ruolo per i driver NDIS.
Per informazioni su Use_decl_annotations, vedere Annotazione del comportamento della funzione.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Supportato in NDIS 6.0 e versioni successive. |
Piattaforma di destinazione | Windows |
Intestazione | ndis.h (includere Ndis.h) |
IRQL | <= DISPATCH_LEVEL |
Vedi anche
NdisMIndicateReceiveNetBufferListsCommenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per