The SRV_OPEN Structure

The SRV_OPEN structure describes a specific open on the server. Multiple file objects and file object extensions (FOBXs) can share the same SRV_OPEN structure if the access rights match. For example, where the file ID is stored for SMBs. A list of the file IDs is associated with the FCB. Similarly, all file object extensions that share the same server-side open are listed together here. Also, information is stored about whether a new open of the FCB can share the server-side open context.

The flag values that affect SRV_OPEN operations are split into two groups:

  • Flags visible to network mini-redirectors

  • Private 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 SRV_OPEN flags. The upper 16 bits are reserved for use internally by RDBSS.

A SRV_OPEN structure contains the following:

  • Signature and reference count

  • A backpointer to the FCB structure

  • A backpointer to the V_NET_ROOT structure (usually)

  • A list of FOBX structures

  • Access rights and collapsibility status

  • Additional storage requested by the network mini-redirector or the creator of the SRV_OPEN structure