版块
论坛
喜欢
话题
应用
搜索
登录
注册
boxcounter的个人空间
访问量
0
新鲜事
帖子
资料
http://bbs3.driverdevelop.com/index.php?m=space&uid=165799
Lazy write导致的内容丢失问题
各位,我现在在做一个加解密的minifilter驱动,现在遇到一个问题:我的加密头在文件首部。我在Write、read中,都会跳过这个首部(512B),通常情况下,这种情况都OK。但是发现当system进行延缓写的时候,会出现最后一部分WriteBuffer中的内容丢失,具体如下...
全文
回复
(
24
)
2008-05-20 11:28
来自版块 -
文件系统(过滤)驱动程序开发
◆
◆
表情
告诉我的粉丝
提 交
boxcounter
:
引用第3楼dionysus77于2008-05-21 19:47发表的 : 对不起,我没看懂,postwrite里面怎么得到的FileSize? 通过FCB来获取的 :)
(2008-05-22 09:27)
回复
dionysus77
:
引用第2楼boxcounter于2008-05-20 13:47发表的 : dionysus77兄: 我的日志如下,这段日志是我采用1KB的加密头的结果: [TFGF] PreCallback(IRP_MJ_WRITE): IrpFlags: 0x00000043, Off...
(2008-05-21 19:47)
回复
boxcounter
:
dionysus77兄: 我的日志如下,这段日志是我采用1KB的加密头的结果: [TFGF] PreCallback(IRP_MJ_WRITE): IrpFlags: 0x00000043, Offset(0), Length: (12288). [TFGF] PostCal...
(2008-05-20 13:47)
回复
dionysus77
:
我也遇到这个问题,就是FileSize不够大的问题,因为SetInformation的IRP出现在磁盘写之后,而paging_io的写不能自动更新EoF。所以写入时,文件大小是不够的。自己设置一下长度再写入就好了。
(2008-05-20 12:22)
回复
« 上一页
1
2
3
boxcounter
加关注
写私信
0
关注
0
粉丝
10
帖子
返回顶部