Minifilter I/O redirection in PreWrite using STATUS_REPARSE

Hi all,

I’ve got a redirection logic in PreCreate of my minifilter. In addition to
that, I’d like to redirect any write operation to a different location(could
be in different volume). The possible PreWrite algorithm might be:

  • Create a new file object using redirect path (i.e.
    FltCreateFile("??\c:\redirect\test.txt) for c:\test.txt)
  • Call FltWriteFile() using my minifilter instance and newly created file
    object synchronously.
  • Complete the request with FLT_PREOP_SUCCESS_NO_CALLBACK.

Does this sound plausible?

Regards,

On Wed, 18 Jul 2007 11:46:19 +0800, dummy wrote:

> Hi all,
>
> I’ve got a redirection logic in PreCreate of my minifilter. In addition
> to
> that, I’d like to redirect any write operation to a different
> location(could

In file system filter driver, I redirected a file to another volume by just
replacing the DeviceObject to which the irp would be sent in IRP_MJ_CREATE.

After that, the handle returned to application was the handle for the file
in
new location, You neednot care about the write/read issue.

Maybe you can do something similar in minifilter.

> be in different volume). The possible PreWrite algorithm might be:
>
> - Create a new file object using redirect path (i.e.
> FltCreateFile("??\c:\redirect\test.txt) for c:\test.txt)
> - Call FltWriteFile() using my minifilter instance and newly created file
> object synchronously.
> - Complete the request with FLT_PREOP_SUCCESS_NO_CALLBACK.
>
> Does this sound plausible?
>
>
> Regards,
>
>
>
> —
> Questions? First check the IFS FAQ at
> https://www.osronline.com/article.cfm?id=17
>
> You are currently subscribed to ntfsd as: xxxxx@gmail.com
> To unsubscribe send a blank email to xxxxx@lists.osr.com


Sincerely yours,
William