MINIPORT_WDI_RX_GET_MPDUS funzione di callback (dot11wdi.h)

Importante

Questo argomento fa parte del modello di driver WDI rilasciato in Windows 10. Il modello di driver WDI è in modalità di manutenzione e riceverà solo correzioni con priorità elevata. WiFiCx è il modello di driver Wi-Fi rilasciato in Windows 11. È consigliabile usare WiFiCx per sfruttare le funzionalità più recenti.

La funzione del gestore MiniportWdiRxGetMpdus restituisce una catena di NET_BUFFER_LIST . Ogni NET_BUFFER_LIST rappresenta un MPDU.

Si tratta di un gestore miniport WDI all'interno di NDIS_MINIPORT_WDI_DATA_HANDLERS.

Nota È necessario dichiarare la funzione usando il tipo di MINIPORT_WDI_RX_GET_MPDUS . Per altre informazioni, vedere la sezione Esempi seguenti.
 

Sintassi

MINIPORT_WDI_RX_GET_MPDUS MiniportWdiRxGetMpdus;

void MiniportWdiRxGetMpdus(
  [in]  TAL_TXRX_HANDLE MiniportTalTxRxContext,
  [in]  WDI_PEER_ID PeerId,
  [in]  WDI_EXTENDED_TID ExTid,
  [out] PNET_BUFFER_LIST *ppNBL
)
{...}

Parametri

[in] MiniportTalTxRxContext

Handle del dispositivo TAL restituito dal miniport IHV in MiniportWdiTalTxRxInitialize.

[in] PeerId

ID peer.

[in] ExTid

TID esteso.

[out] ppNBL

Puntatore a un puntatore a una catena NET_BUFFER_LIST dal miniport IHV.

Valore restituito

nessuno

Osservazioni

Se PeerId e ExTid non sono caratteri jolly (ad esempio PeerId non è uguale a 0xFFFF, ExTid non è uguale a 31), tutti gli MPD nella catena sono dello stesso ID peer e TID (in questo caso, TID è un TID valido 802.11 TID).

Ogni NET_BUFFER_LIST punta a strutture NET_BUFFER . Ogni struttura NET_BUFFER rappresenta un MSDU.

Se un MPDU ha un frammento MSDU come payload e la deframmentazione non viene disattivato in destinazione/TAL (o la modalità FIPS implementata dall'host) il NET_BUFFER_LIST corrispondente ha un NET_BUFFER che descrive il frammento MSDU.

L'offset dei dati di ogni NET_BUFFER deve essere impostato sull'inizio dell'intestazione MAC.

Esempio

Per definire una funzione MiniportWdiRxGetMpdus, è 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 MiniportWdiRxGetMpdus denominata "MyRxGetMpdus", usare il tipo di MINIPORT_WDI_RX_GET_MPDUS come illustrato nell'esempio di codice seguente:

MINIPORT_WDI_RX_GET_MPDUS MyRxGetMpdus;

Implementare quindi la funzione come indicato di seguito:

_Use_decl_annotations_
VOID
 MyRxGetMpdus(
    TAL_TXRX_HANDLE MiniportTalTxRxContext,
    WDI_PEER_ID PeerId,
    WDI_EXTENDED_TID ExTid,
    PNET_BUFFER_LIST *ppNBL
    )
  {...}

Il tipo di funzione MINIPORT_WDI_RX_GET_MPDUS è definito nel file di intestazione dot11wdi.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_WDI_RX_GET_MPDUS 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 Windows 10
Server minimo supportato Windows Server 2016
Piattaforma di destinazione Windows
Intestazione dot11wdi.h

Vedi anche

NDIS_MINIPORT_WDI_DATA_HANDLERS

NET_BUFFER

NET_BUFFER_LIST

TAL_TXRX_HANDLE

Percorso RX WDI

WDI_EXTENDED_TID

WDI_PEER_ID