IoctlReqs 规则 (kmdf)

IoctlReqs 规则指定不得将 IOCTL 请求传递给不适当的 KMDF 请求或将设备驱动程序接口 (DDI) 。

向驱动程序的 EvtIoDeviceControl 事件回调函数呈现的所有请求都保证为 IOCTL 请求。 驱动程序的 EvtIoDeviceControl 函数使用 EVT_WDF_IO_QUEUE_IO_DEVICE_CONTROL 函数角色类型声明。

这些 IOCTL 请求无法发送到以下特定于发送读取、写入或 IOCTL 请求的 DDI:

WdfUsbTargetPipeSendUrbSynchronouslyWdfIoTargetSendReadSynchronouslyWdfIoTargetSendWriteSynchronouslyWdfIoTargetSendInternalIoctlSynchronouslyWdfIoTargetSendInternalIoctlOthersSynchronouslyWdfUsbTargetPipeWriteSynchronouslyWdfUsbTargetPipeReadSynchronously

驱动程序模型:KMDF

如何测试

编译时

运行 静态驱动程序验证程序 并指定 IoctlReqs 规则。

使用以下步骤运行代码分析:
  1. 准备代码 (使用角色类型声明) 。
  2. 运行静态驱动程序验证程序。
  3. 查看和分析结果。

有关详细信息,请参阅 使用静态驱动程序验证程序查找驱动程序中的缺陷

适用于

WdfIoTargetSendInternalIoctlOthersSynchronouslyWdfIoTargetSendInternalIoctlSynchronouslyWdfIoTargetSendSynchronouslyWdfIoTargetSendWriteSynchronouslyWdfUsbTargetPipeReadSynchronouslyWdfUsbTargetPipeSendUrbSynchronouslyWdfUsbTargetPipeWriteSynchronously