Hi all
Using IFS WindowsXP to filter the Rdr redirector
In a PostCreate routine, i am trying to cancel the opened remote file, and redirect
using STATUS_REPARSE to a different local path.
This works, except the remote files remains locked (i.e. opened) even though
i call FltCancelFileOpen().
If instead of returning STATUS_REPARSE i return ACCESS_DENIED,
then the FltCancelFileOpen() seems to correctly cancel the open and the
remote file is deletable.
… in the post create callback …
FltCancelFileOpen( FltObjects->Instance, FltObjects->FileObject);
Data->Iopb->TargetFileObject->FileName=RedirectedFilename;
Data->IoStatus.Status = STATUS_REPARSE;
Data->IoStatus.Information = IO_REPARSE;
FltSetCallbackDataDirty(Data);
the above code works great except that the original remote file remains locked…
Any hint?
How about setting FO_FILE_OPEN_CANCELLED and simply closing
the file object my self ?!
Yariv