2.5.10 FileFsDeviceInformation

This information class is used to query device information associated with a file system volume.

A FILE_FS_DEVICE_INFORMATION data element, defined as follows, is returned by the server.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

DeviceType

Characteristics

DeviceType (4 bytes): This identifies the type of given volume. It MUST be one of the following.

Value

Meaning

FILE_DEVICE_CD_ROM

0x00000002

Volume resides on a CD ROM.

FILE_DEVICE_DISK

0x00000007

Volume resides on a disk.

Characteristics (4 bytes): A bit field which identifies various characteristics about a given volume. The following are valid bit values.

Value

Meaning

FILE_REMOVABLE_MEDIA                                    

0x00000001

Indicates that the storage device supports removable media. Notice that this characteristic indicates removable media, not a removable device. For example, drivers for JAZ drive devices specify this characteristic, but drivers for PCMCIA flash disks do not.

FILE_READ_ONLY_DEVICE

0x00000002

Indicates that the device cannot be written to.

FILE_FLOPPY_DISKETTE

0x00000004

Indicates that the device is a floppy disk device.

FILE_WRITE_ONCE_MEDIA

0x00000008

Indicates that the device supports write-once media.

FILE_REMOTE_DEVICE

0x00000010

Indicates that the volume is for a remote file system like SMB or CIFS.

FILE_DEVICE_IS_MOUNTED

0x00000020

Indicates that a file system is mounted on the device.

FILE_VIRTUAL_VOLUME

0x00000040

Indicates that the volume does not directly reside on storage media but resides on some other type of media (memory for example).

FILE_DEVICE_SECURE_OPEN

0x00000100

By default, volumes do not check the ACL associated with the volume, but instead use the ACLs associated with individual files on the volume. When this flag is set the volume ACL is also checked.

FILE_CHARACTERISTIC_TS_DEVICE

0x00001000

Indicates that the device object is part of a Terminal Services device stack. See [MS-RDPBCGR] for more information.

FILE_CHARACTERISTIC_WEBDAV_DEVICE

0x00002000

Indicates that a web-based Distributed Authoring and Versioning (WebDAV) file system is mounted on the device. See [MS-WDVME] for more information.

FILE_DEVICE_ALLOW_APPCONTAINER_TRAVERSAL

0x00020000

The IO Manager normally performs a full security check for traverse access on every file open when the client is an appcontainer.  Setting of this flag bypasses this enforced traverse access check if the client token already has traverse privileges.<173>

FILE_PORTABLE_DEVICE

0x0004000

Indicates that the given device resides on a portable bus like USB or Firewire and that the entire device (not just the media) can be removed from the system.

This operation returns a status code as specified in section 2.2. Upon success, the status code returned by the function that processes this file system information class is STATUS_SUCCESS. The most common error codes are listed in the following table.

Error code

Meaning

STATUS_INFO_LENGTH_MISMATCH

0xC0000004

The specified information record length does not match the length that is required for the specified information class.