clxye
驱动牛犊
驱动牛犊
  • 注册日期2007-03-15
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分128分
  • 威望74点
  • 贡献值2点
  • 好评度13点
  • 原创分0分
  • 专家分0分
阅读:1116回复:0

IOCTL_WDM1_GET_BUFFER请求的处理?

楼主#
更多 发布于:2007-08-14 11:01
//  Get buffer
case IOCTL_WDM1_GET_BUFFER:
    if(OutputLength>BufferSize)
    status = STATUS_INVALID_PARAMETER;
    else
    {
         BytesTxd = OutputLength;
         RtlCopyMemory(Irp->AssociatedIrp.SystemBuffer, Buffer, BytesTxd);
    }
break;

这是书中的代码。请问为什么要加上 if(OutputLength>BufferSize)这个判断呢?
我觉得输出缓冲区大反倒是更好啊,为什么他返回STATUS_INVALID_PARAMETER。

谢谢指点!!
游客

返回顶部