The FOBX Structure
A file object extension (FOBX) structure is an RDBSS extension to the FILE_OBJECT structure. The FOBX structure is pointed to by the FileObjectExtension field in the file object. An FOBX structure contains the following:
A signature and reference count
A backpointer to the associated FCB structure
A backpointer to the associated SRV_OPEN structure
Context information about this open structure
Additional storage requested by the network mini-redirector or the creator of the FOBX structure
The FOBX structure contains all of the information that is needed, per file object, which is not normally stored by the I/O system. Information about file objects is stored by the I/O system in fixed-size file system objects. The FOBX structure handles the other information needed on file objects by network mini-redirectors.
The FOBX structure for any file object is referenced by the FsContext2 field in the file object. Even though the FOBX structure is ordinarily a terminus in the RDBSS structure, the FOBX structure is currently reference counted anyway.
The FOBX flags are split into two groups:
Flags visible to network mini-redirectors
Flags used internally by RDBSS and invisible to network mini-redirectors
The flags visible to network mini-redirectors consist of the lower 16 bits of the possible FOBX flags. The upper 16 bits are reserved for use internally by RDBSS.