Hi Folks,
Back in July 2002, there was a discussion on unique id for a file.
Most file systems generate unique IDs per volume except FAT, which generates
non-unique file id with or without defragmentation. Per Stream tracking can
be done using FileObject->FsContext in NTFS. Does it also work for other
file systems such as FAT, CDFS, and UDFS? (Those file systems don’t support
“stream” concept)
I’m trying to sort out a unified way to keep track of streams in every file
system (file is basically a default data stream in NTFS, hence is included
into the “stream” category). It doesn’t have to be persistent across reboots
and per-volume uniqueness is good enough.
Thanks in advance,
> Per Stream tracking can be done using FileObject->FsContext in NTFS. Does
it also work for other file systems such as FAT, CDFS, and UDFS? (Those
file systems don’t support “stream” concept)
Briefly, yes for the filesystems you list.
In more detail, if you are using the minifilter, this is exactly what a
stream context gives you.
If you are not using the minifilter FsContext, is good enough. I seem to
recall that filesystems are allowed to have non standard things at FsContext
but all of the usual ones (which includes the ones you list) respect the
convention that FsContext is the same for all file objects open to the same
stream (or file if streams are not supported).
I seem to recall someone mentioning recently that the convention was to
become a requirement (that FsContext always points to a COMMON_HDR)?
This article might help http://www.osronline.com/article.cfm?article=356
“Sean Park” wrote in message news:xxxxx@ntfsd…
> Hi Folks,
>
> Back in July 2002, there was a discussion on unique id for a file.
> Most file systems generate unique IDs per volume except FAT, which
> generates non-unique file id with or without defragmentation. Per Stream
> tracking can be done using FileObject->FsContext in NTFS. Does it also
> work for other file systems such as FAT, CDFS, and UDFS? (Those file
> systems don’t support “stream” concept)
>
> I’m trying to sort out a unified way to keep track of streams in every
> file system (file is basically a default data stream in NTFS, hence is
> included into the “stream” category). It doesn’t have to be persistent
> across reboots and per-volume uniqueness is good enough.
>
> Thanks in advance,
>
>