Hello,
I could proceed a little further but in finishing the IRP, I am having a
problem. If I set the SrbStatus to some error value and complete the Irp
with some successful or warning NTSTATUS then my system is crashing. And I
set the NTSTATUS to error level NTSTATUS (to “CRC error”) then the system
is not crashing.
I am doing something like this:
srb.ScsiStatus = (UCHAR)SRB_STATUS_ERROR;
srb.SrbStatus = (UCHAR)18;
memcpy(?tIrpStack->Parameters.Scsi.Srb, &srb, sizeof(srb));
Irp->IoStatus.Information = 0;
Irp->IoStatus.Status =NTStatus;
IoCompleteRequest(Irp, IO_NO_INCREMENT);
return NTStatus;
here if NTSTATUS is - 0 or 18 then it is crashing. If I give 0xC000003F then
works fine.
What could be the reason in the first condition? And Can I do like this. I
mean is this correct or am I missing something?)
Can anyone tell how to do the same thing (set the srb status) from the
IRP_MJ_DEVICE_CONTROL also?
Regards
Ramesh
–
Find what you are looking for with the Lycos Yellow Pages
http://r.lycos.com/r/yp_emailfooter/http://yellowpages.lycos.com/default.asp?SRC=lycos10