MINIPORT_WDI_RX_GET_MPDUS回调函数 (dot11wdi.h)

重要

本主题是 Windows 10 中发布的 WDI 驱动程序模型的一部分。 WDI 驱动程序模型处于维护模式,仅会收到高优先级修补程序。 WiFiCx 是 Windows 11 中发布的 Wi-Fi 驱动程序模型。 建议使用 WiFiCx 来利用最新功能。

MiniportWdiRxGetMpdus 处理程序函数返回 NET_BUFFER_LIST 链。 每个NET_BUFFER_LIST表示一个 MPDU。

这是 NDIS_MINIPORT_WDI_DATA_HANDLERS 中的 WDI 微型端口处理程序。

注意 必须使用 MINIPORT_WDI_RX_GET_MPDUS 类型声明函数。 有关详细信息,请参阅以下示例部分。
 

语法

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
)
{...}

参数

[in] MiniportTalTxRxContext

MiniportWdiTalTxRxInitialize 中 IHV 微型端口返回的 TAL 设备句柄。

[in] PeerId

对等 ID。

[in] ExTid

扩展的 TID。

[out] ppNBL

指向从 IHV 微型端口指向 NET_BUFFER_LIST 链的指针的指针。

返回值

备注

例如,如果 PeerIdExTid 不是通配符 (PeerId 不等于 0xFFFF,ExTid 不等于 31) ,则链中的所有 MPD 都具有相同的对等 ID,在这种情况下 (,TID 是有效的 802.11 TID) 。

每个 NET_BUFFER_LIST 指向 NET_BUFFER 结构。 每个NET_BUFFER结构表示一个 MSDU。

如果 MPDU 具有作为有效负载的 MSDU 片段,并且碎片整理未卸载到目标/TAL (,或者) 启用了主机实现的 FIPS 模式,则相应的NET_BUFFER_LIST具有一个描述 MSDU 片段的NET_BUFFER。

每个NET_BUFFER的数据偏移量必须设置为 MAC 标头的开头。

示例

若要定义 MiniportWdiRxGetMpdus 函数,必须首先提供一个函数声明来标识要定义的函数类型。 Windows 为驱动程序提供一组函数类型。 使用函数类型声明函数可帮助 驱动程序的代码分析静态驱动程序验证程序 (SDV) 和其他验证工具查找错误,并且这是编写 Windows 操作系统驱动程序的要求。

例如,若要定义名为“MyRxGetMpdus”的 MiniportWdiRxGetMpdus 函数,请使用 MINIPORT_WDI_RX_GET_MPDUS 类型,如以下代码示例所示:

MINIPORT_WDI_RX_GET_MPDUS MyRxGetMpdus;

然后,按如下所示实现函数:

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

MINIPORT_WDI_RX_GET_MPDUS函数类型在 dot11wdi.h 头文件中定义。 若要在运行代码分析工具时更准确地识别错误,请务必将 Use_decl_annotations 注释添加到函数定义。 Use_decl_annotations批注可确保使用应用于头文件中MINIPORT_WDI_RX_GET_MPDUS函数类型的注释。 有关函数声明要求的详细信息,请参阅 使用 NDIS 驱动程序的函数角色类型声明函数

有关 Use_decl_annotations的信息,请参阅 批注函数行为

要求

要求
最低受支持的客户端 Windows 10
最低受支持的服务器 Windows Server 2016
目标平台 Windows
标头 dot11wdi.h

另请参阅

NDIS_MINIPORT_WDI_DATA_HANDLERS

NET_BUFFER

NET_BUFFER_LIST

TAL_TXRX_HANDLE

WDI RX 路径

WDI_EXTENDED_TID

WDI_PEER_ID