Did you say you are completing the irp in a completion routine
(presumably after returning STATUS_MORE_PROCESSING_REQUIRED from your
completion routine then resuming on the ExWorker)? I may be
misunderstanding your original email, but if that is what you are doing, it
seems like a problematic approach as the FSD would have already opened the
file internally and then you are essentially lying to the io system. You
would have to send a cleanup and close irp to the FSD from your ExWorker
routine for this to work right (but again, I may just be misunderstanding
your approach). It seems like it would be easier to do the reject from your
create dispatch routine.
-----Original Message-----
From: Rob Linegar [mailto:xxxxx@des.co.uk]
Sent: Friday, September 15, 2000 4:12 AM
To: File Systems Developers
Subject: [ntfsd] RE: Problems after preventing access to files
Yes, I thought this at first, but I don’t actually open the file myself
anywhere.
All I did to reproduce the problem was set a flag from an ioctl and in the
worker check this flag, if the flag is set deny access to the specified
file.
HandleEx from sysinternals shows no handles open for the file.
Rob Linegar
Software Engineer
Data Encryption Systems Limited
-----Original Message-----
From: I?aki Castillo [mailto:xxxxx@pandasoftware.es]
Sent: 14 September 2000 19:45
To: File Systems Developers
Subject: [ntfsd] RE: Problems after preventing access to files
It seems you are leaving a handle open for the file.
Inaki.
> -----Original Message-----
> From: Rob Linegar
> Sent: jueves 14 de septiembre de 2000 18:10
> To: File Systems Developers
> Subject: [ntfsd] Problems after preventing access to files
>
> Hi all,
>
> I’m experiencing a problem after I want to stop denying
open access to
> files.
>
> I deny open access by doing the following in a worker routine during
> completion.
>
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> pContext->pOriginalIrp->IoStatus.Status = STATUS_ACCESS_DENIED;
> pContext->pOriginalIrp->IoStatus.Information = 0;
> IoCompleteRequest( pContext->pOriginalIrp, IO_NO_INCREMENT );
> ExFreePool( pContext );
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
>
> The problem i’m experiencing is that once I stop blocking
open access to
> the
> file in question it can’t be deleted, rename or
overwritten, but it can be
> copied.
>
> Has anyone experienced this before?
>
> Best Regards,
>
> Rob Linegar
> Software Engineer
> Data Encryption Systems Limited
>
> —
> You are currently subscribed to ntfsd as: xxxxx@pandasoftware.es
> To unsubscribe send a blank email to $subst(‘Email.Unsub’)
You are currently subscribed to ntfsd as: xxxxx@des.co.uk
To unsubscribe send a blank email to $subst(‘Email.Unsub’)
You are currently subscribed to ntfsd as: xxxxx@ntpsoftware.com
To unsubscribe send a blank email to $subst(‘Email.Unsub’)