I am using the “shadow device” method described by OSR
in the FAQ
(https://www.osronline.com/article.cfm?id=17#Q34) to
handle reentrant opens from my own driver.
This is working great. However, when I run with the
checked build of ntfs.sys (W2K SP4) I get the
following assertion:
*** Assertion failed: No correspondence btwn file and
device in irp((IrpSp->FileObject->Vpb == NULL) &&
((IrpSp->FileObject->DeviceObject != NULL) &&
(IrpSp->FileObject->DeviceObject->Vpb != NULL) &&
(IrpSp->DeviceObject ==
IrpSp->FileObject->DeviceObject->Vpb->DeviceObject)))
|| ((IrpSp->FileObject->Vpb != NULL) &&
(IrpSp->DeviceObject ==
IrpSp->FileObject->Vpb->DeviceObject)) || (!FlagOn(
Vcb->VcbState, VCB_STATE_VOLUME_MOUNTED ))
*** Source File:
D:\nt\private\ntos\cntfs\strucsup.c, line 6563
Does this indicate a problem with the way I’m doing
it? If not, how do I get rid of this assertion?
Thanks,
Do you Yahoo!?
New and Improved Yahoo! Mail - 100MB free storage!
http://promotions.yahoo.com/new_mail