Re: Blocking the request in filter driver's completion (p ost-filtering) [Impossible?]

To Mark Roddy:

Your dispatch routine is borken :slight_smile:

Suppose your completion handler returned STATUS_MORE_PROCESSING_REQUIRED?
Not only would DV be complaining, but the system would be going about its
bugcheck nonsense.

No. Return value from my completion handler is STATUS_SUCCESS.

To Mats PETERSSON:

Have you tried returning “STATUS_UNSUCCESSFUL” or something similar from
your function where you refuse the IRP? I think that’s how you’re supposed
to do it, but I’m not an expert…

I’ve just tried it. The result is the same.

BTW, I have an idea. For STATUS_SUCCESS from the lower driver (sync case) I
can change return value in my device dispatch routine (give my context to
completion in store new status in context). For STATUS_PENDING I think
Driver verifier will not tell me about status != Irp->IoStatus.Status.

Vlad