How widespread is StreamContext support?

All this talk about stream contexts has made me realize that I’m sort of
reinventing the wheel over here. Instead of managing this stuff myself,
I think I’d be better off using StreamContexts. The docs say that the
Flt*StreamContext functions can return STATUS_NOT_SUPPORTED if the FS
doesn’t support per-stream contexts, but I can’t find documentation
telling me which filesystems do support them. I’m only attaching to
NTFS filesystems at the moment because we’re using reparse points, and
only ntfs supports that feature.

Do I run a real risk of having painted myself into a corner using stream
contexts if I run into another FS that supports RPs but not stream
contexts, or is that a very unlikely scenario?

~Eric

“Contexts and 3rd party file systems…All Microsoft file systems now use
this”

Taken from here:

http://download.microsoft.com/download/f/0/5/f05a42ce-575b-4c60-82d6-208d3754b2d6/ContextManagement.ppt

I assume that *every* established 3rd party FS-driver supports it, too. If
not…it’s not worth being filtered :wink:

“Eric Diven” wrote news:xxxxx@ntfsd…
All this talk about stream contexts has made me realize that I’m sort of
reinventing the wheel over here. Instead of managing this stuff myself,
I think I’d be better off using StreamContexts. The docs say that the
Flt*StreamContext functions can return STATUS_NOT_SUPPORTED if the FS
doesn’t support per-stream contexts, but I can’t find documentation
telling me which filesystems do support them. I’m only attaching to
NTFS filesystems at the moment because we’re using reparse points, and
only ntfs supports that feature.

Do I run a real risk of having painted myself into a corner using stream
contexts if I run into another FS that supports RPs but not stream
contexts, or is that a very unlikely scenario?

~Eric

Actually, there are a probably a number of 3rd party file systems that do
not support it. Remember this only works with the FSRTL_ADVANCED_FCB_HEADER
which is a fairly recent (last few years) capability. I suspect that a
number of file systems have not gotten around to changing their FCB’s to
support this.

Whether this is important is something only the OP can decide.


Don Burn (MVP, Windows DDK)
Windows 2k/XP/2k3 Filesystem and Driver Consulting
Website: http://www.windrvr.com
Blog: http://msmvps.com/blogs/WinDrvr
Remove StopSpam to reply

“frank” wrote in message news:xxxxx@ntfsd…
> “Contexts and 3rd party file systems…All Microsoft file systems now use
> this”
>
> Taken from here:
>
> http://download.microsoft.com/download/f/0/5/f05a42ce-575b-4c60-82d6-208d3754b2d6/ContextManagement.ppt
>
> I assume that every established 3rd party FS-driver supports it, too. If
> not…it’s not worth being filtered :wink:
>
>
>
> “Eric Diven” wrote news:xxxxx@ntfsd…
> All this talk about stream contexts has made me realize that I’m sort of
> reinventing the wheel over here. Instead of managing this stuff myself,
> I think I’d be better off using StreamContexts. The docs say that the
> Flt*StreamContext functions can return STATUS_NOT_SUPPORTED if the FS
> doesn’t support per-stream contexts, but I can’t find documentation
> telling me which filesystems do support them. I’m only attaching to
> NTFS filesystems at the moment because we’re using reparse points, and
> only ntfs supports that feature.
>
> Do I run a real risk of having painted myself into a corner using stream
> contexts if I run into another FS that supports RPs but not stream
> contexts, or is that a very unlikely scenario?
>
> ~Eric
>
>
>

Novell doesn’t support it (as if this is the least of worries filtering Novell :D)
Not all files support contexts even on NTFS. For example Page/Hiberfile.

frank wrote:

“Contexts and 3rd party file systems…All Microsoft file systems now use
this”

Taken from here:

http://download.microsoft.com/download/f/0/5/f05a42ce-575b-4c60-82d6-208d3754b2d6/ContextManagement.ppt

I assume that *every* established 3rd party FS-driver supports it, too. If
not…it’s not worth being filtered :wink:

“Eric Diven” wrote news:xxxxx@ntfsd…
> All this talk about stream contexts has made me realize that I’m sort of
> reinventing the wheel over here. Instead of managing this stuff myself,
> I think I’d be better off using StreamContexts. The docs say that the
> Flt*StreamContext functions can return STATUS_NOT_SUPPORTED if the FS
> doesn’t support per-stream contexts, but I can’t find documentation
> telling me which filesystems do support them. I’m only attaching to
> NTFS filesystems at the moment because we’re using reparse points, and
> only ntfs supports that feature.
>
> Do I run a real risk of having painted myself into a corner using stream
> contexts if I run into another FS that supports RPs but not stream
> contexts, or is that a very unlikely scenario?
>
> ~Eric
>
> —
> NTFSD is sponsored by OSR
>
> For our schedule debugging and file system seminars
> (including our new fs mini-filter seminar) visit:
> http://www.osr.com/seminars
>
> You are currently subscribed to ntfsd as: xxxxx@alfasp.com
> To unsubscribe send a blank email to xxxxx@lists.osr.com


Kind regards, Dejan (MSN support: xxxxx@alfasp.com)
http://www.alfasp.com
File system audit, security and encryption kits.