I am developing a shadow filesystem using minifilter dirver, and we use reparse mechanism to redirect the file to new path in pre-create.
Here Is how it works:
1. In pre-create callback ，create new path acoording to old path，use IoReplaceFileObjectName to replace name, and set Data->IoStatus.Status = STATUS_REPARSE; Data->IoStatus.Information = IO_REPARSE; return FLT_PREOP_COMPLETE;
2. we will receive a new IRP_MJ_CREATE with the new reparsed path.
The REPARSE works, but now we want to add some extra information from step 1 to step 2. For example, in step 2, we want to know whether the IRP is due to REPARSE.
I do some experiments, and find out that:
1. The Data-Iopb-TargetFileObject is same address in step 1 and step 2.
2. I try to set the FsContext, FsContext2, CompetionContext in Data-Iopb-TargetFileObject in step 1, but these fileds seem to be reseted to NULL in step 2.
Is this possible? Any suggestion ? Thank you for any help.
It looks like you're new here. If you want to get involved, click one of these buttons!
|Upcoming OSR Seminars|
|Developing Minifilters||29 July 2019||OSR Seminar Space|
|Writing WDF Drivers||23 Sept 2019||OSR Seminar Space|
|Kernel Debugging||21 Oct 2019||OSR Seminar Space|
|Internals & Software Drivers||18 Nov 2019||Dulles, VA|