Minifilter shadow file objects

Hi all,

I’m trying to implement the functionality in minifilter driver to redirect all create/read/write
requests to different file/directory.

But i can’t use of STATUS_REPARSE way becouse all changes have to remain in source file also.

So if user change c:\a\b\somefile.dat i need to change both c:\a\b\somefile.dat and d:\a\b\somefile.dat.

Any suggestions to do so in minifilter driver ?

Thanks in advance

I think your best bet would be to issue the same operations on the other
volume (D:). There is no good automated way to do that so you’ll have to do
that yourself (it’s not too complicated in the general case but there are
some cases where you’ll need to do more work; some operations can’t be
issued directly in a minifilter so you might need to fiddle with the
FLT_CALLBACK_DATA structure directly, for example MDL Writes can’t be issued
directly using FltWriteFile). I don’t know about your particular solution
but in most cases it’s recommended to send the requests to the top of the
stack on the other volume.

An important decision you need to make is what to do if an operation
succeeds on one volume and fails on the other.