As if this isn’t already complex enough, we have found some products
that explicitly skip over your filter - sometimes. For example, we
recently found a product that sent an IRP_MJ_CREATE through our filter
but then send the final IRP_MJ_CLOSE directly to the underlying file
system. Needless to say, we were not very happy when we saw a new
IRP_MJ_CREATE against a file object we still thought was “alive”.
So, the interactions we discuss here are those of the base OS and “all
bets are off” when you start working with third party components.
Regards,
Tony
Tony Mason
Consulting Partner
OSR Open Systems Resources, Inc.
http://www.osr.com
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of
xxxxx@comcast.net
Sent: Wednesday, July 05, 2006 7:55 AM
To: ntfsd redirect
Subject: [ntfsd] Re:async IO
Slava,
I was responding to Mani with the link. He asked, “But are there any FOs
which a fs filter will not see?”
In the article I posted, it states;
A file system has several mechanisms for creating file objects that it
may use for its own internal processing. These include
IoCreateStreamFileObject, IoCreateStreamFileObjectLite, and
IoCreateStreamFileObjectEx. Not all of these are available in all
versions, but even the Windows NT 4.0 IFS Kit contained the
IoCreateStreamFileObject call. Both IoCreateStreamFileObject and
IoCreateStreamFileObjectLite are documented in the Windows XP IFS Kit
and each provides similar functionality - they creat e file objects
based upon either an existing file object or device object. The IFS Kit
documentation sums up the problem for file system filter drivers, in the
page for IoCreateStreamFileObjectLite:
“Thus filter drivers should expect to receive IRP_MJ_CLOSE requests for
previously unseen file objects.”
m
Search the archive, we read and discussed this article many times,
especially this quote
“For each IRP_MJ_CLOSE the filter driver decrements the reference count
on the per-file context structure if the FO_STREAM_FILE bit is not set
for the file object and if CcGetFileObjectFromSectionPtrs does not
return this file object.”
And this article says nothing about " the CC create’s it’s own FO’s
sometimes - obviously with the assistance of the fsd".
wrote in message news:xxxxx@ntfsd…
Read this article about stream tracking, this is what I was
recalling last night when speaking of FOs he wouldn’t see…
http://www.osronline.com/article.cfm?id=102
m
—
Questions? First check the IFS FAQ at
https://www.osronline.com/article.cfm?id=17
You are currently subscribed to ntfsd as: unknown lmsubst tag argument:
‘’
To unsubscribe send a blank email to xxxxx@lists.osr.com
—
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