Use filter contexts whenever they are available. Then you can use the
context information you constructed (when the original IRP_MJ_OPEN
arrived on ANY file object for this file.)
Of course, your fundamental error is that you are trying to rely upon
names in the first place - a common mistake to make. I’ve noted this
before, but one can open a file by ID (64-bit) object ID (128-bit) and
files can have multiple names (hard links). In addition, when you query
the name of a file object (even in post-create) you may get back a name
that is NO LONGER VALID because the file has been renamed. Oh, and lets
not forget that there are short and long file names.
So, make your decision once, store that information with the filter
context and then you should be fine.
Tony
Tony Mason
Consulting Partner
OSR Open Systems Resources, Inc.
http://www.osr.com
-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of zymoonstone@163.com
Sent: Tuesday, September 12, 2006 5:14 AM
To: ntfsd redirect
Subject: RE:[ntfsd] Can i hook iocreatestreamfileobject in SFilter?
Yes, i can watch the io, such as read/write, and insert the unseen
stream file object to my hashtable, but in some cases, i have not seen a
request of irp_mj_create to a file, while i meet a stream file object
from write or read of the file, that mean, i cannot get the file name of
the stream fileobject, so i can not decide whether to bypass the
read/write packer or not, how to resolve such problem?
Questions? First check the IFS FAQ at
https://www.osronline.com/article.cfm?id=17
You are currently subscribed to ntfsd as: xxxxx@osr.com
To unsubscribe send a blank email to xxxxx@lists.osr.com