2.2.3.45 CLUS_PARTITION_INFO_EX2

The CLUS_PARTITION_INFO_EX2 data structure SHOULD<42> be used to store data about the disk partition that is configure with a basic volume.

The CLUS_PARTITION_INFO_EX2 is the format in which a property value of syntax CLUS_SYNTAX_PARTITION_INFO_EX2 (section 2.2.2.3) is written as a property value, as specified in Property Value (section 2.2.3.10.1).

CLUS_PARTITION_INFO_EX2 is a custom-marshaled data structure that has fields as follows.


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

dwFlags

szDeviceName_(520_bytes)

...

...

szVolumeLabel_(520_bytes)

...

...

dwSerialNumber

rgdwMaximumComponentLength

dwFileSystemFlags

szFileSystem_(64_bytes)

...

...

TotalSizeInBytes

...

FreeSizeInBytes

...

DeviceNumber

PartitionNumber

VolumeGuid_(16_bytes)

...

...

GptPartitionId_(16_bytes)

...

...

szPartitionName_(520_bytes)

...

...

EncryptionFlags

dwFlags (4 bytes): An unsigned 32-bit integer that indicates characteristics of the partition. Can be a combination of the following values.

Value

Meaning

CLUSPROP_PIFLAG_STICKY

0x00000001

The volume is configured with a drive letter.

Can be combined with any other flag.

CLUSPROP_PIFLAG_REMOVABLE

0x00000002

The partition is formatted with a file system that is removable by the cluster software.

CLUSPROP_PIFLAG_USABLE

0x00000004

The partition is formatted with a file system that is usable by the cluster software. This flag SHOULD be set only if the partition is formatted with the NT file system (NTFS).

Can be combined with any other flag, but MUST be set if CLUSPROP_PIFLAG_DEFAULT_QUORUM is set.

CLUSPROP_PIFLAG_DEFAULT_QUORUM

0x00000008

Indicates that the smallest NTFS partition MUST be at least 50,000,000 bytes in size.

Can be combined with any other flag, but CLUSPROP_PIFLAG_USABLE MUST also be set if this flag is set.

CLUSPROP_PIFLAG_USABLE_FOR_CSV

0x00000010

This flag is set if and only if the partition is formatted with NTFS/ReFS. Can be combined with any other flag.

CLUSPROP_PIFLAG_ENCRYPTION_ENABLED

0x00000020

Encryption is enabled and this flag is used when ENCRYPTION_ENABLED flag is set in EncryptionFlags field.

CLUSPROP_PIFLAG_RAW

0x00000040

The partition is a raw volume and is not formatted with a file system.

CLUSPROP_PIFLAG_UNKNOWN

0x80000000

Partition is of unknown file system type.

szDeviceName_(520_bytes): A fixed-length buffer that contains a null-terminated Unicode string based on the following rules:

  • If the volume has a drive letter and the state of the designated storage resource is ClusterResourceOnline, the server MUST return the drive letter of the volume followed by a Unicode ':'.

  • If the volume is not configured with a drive letter and the resource is online, the server MUST return a string of the form "\\?\Volume{GGG}" where GGG is the identifier of the volume.

  • If the resource is offline, the server MUST return a string of the form "\\?\GLOBALROOT\Device\HarddiskNNN\PartitionYYY", where NNN is the disk number and YYY is the partition number ([MS-DMRP]).

    Note: If the resource is offline, the remaining fields in this structure are left unfilled and MUST NOT be considered valid data.

szVolumeLabel_(520_bytes): A fixed-length buffer that contains the file system label. This field is a null-terminated Unicode string.

dwSerialNumber (4 bytes): An unsigned 32-bit integer that is the serial number assigned by the operating system when the partition was formatted.

rgdwMaximumComponentLength (4 bytes): An unsigned 32-bit integer specifying the maximum length, in characters, of a file name component that is supported by the specified file system. A file name component is the portion of a file name between "\" characters.

dwFileSystemFlags (4 bytes): An unsigned 32-bit integer that identifies the file system flags.

szFileSystem_(64_bytes): A fixed-length buffer 64 bytes long that contains a null-terminated Unicode string representing the name of the file system, as specified in [MS-DMRP].

TotalSizeInBytes (8 bytes): An unsigned 64-bit integer specifying the total size, in bytes, of the volume.

FreeSizeInBytes (8 bytes): An unsigned 64-bit integer specifying the size, in bytes, of the unallocated space on the volume.

DeviceNumber (4 bytes): An unsigned 32-bit integer indicating the disk number.

PartitionNumber (4 bytes): An unsigned 32-bit integer indicating the partition number, as specified in [MS-DMRP].

VolumeGuid_(16_bytes): A 128-bit value that contains the volume identifier.

GptPartitionId_(16_bytes): A 128-bit value that contains the GUID Partition Table identifier.

szPartitionName_(520_bytes): A fixed-length buffer that contains the partition name. This field is a null-terminated Unicode string.

EncryptionFlags (32 bits): A 32-bit integer that indicates the encryption status on the partition. Can be a combination of the following values.

Value

Meaning

0x00000000

No flags are set.

ENCRYPTION_ENABLED

0x00000001

Encryption is enabled.

ENCRYPTION_DECRYPTED

0x00000004

Data is fully decrypted.

ENCRYPTION_ENCRYPTED

0x00000008

Data is fully encrypted.

ENCRYPTION_DECRYPTING

0x00000010

When encryption is disabled decryption starts.

ENCRYPTION_ENCRYPTING

0x00000020

Encryption in progress.

ENCRYPTION_PAUSED

0x00000040

Encryption/Decryption is put on pause state.