VDS_LUN_INFORMATION structure [VDS]

The VDS_LUN_INFORMATION structure defines information about a LUN or disk. Applications can use this structure to uniquely identify a LUN at all times.

typedef struct _VDS_LUN_INFORMATION {
  ULONG m_version;
  BYTE m_DeviceType;
  BYTE m_DeviceTypeModifier;
  BOOL m_bCommandQueueing;
  VDS_STORAGE_BUS_TYPE m_BusType;
  char* m_szVendorId;
  char* m_szProductId;
  char* m_szProductRevision;
  char* m_szSerialNumber;
  GUID m_diskSignature;
  VDS_STORAGE_DEVICE_ID_DESCRIPTOR m_deviceIdDescriptor;
  ULONG m_cInterconnects;
  VDS_INTERCONNECT* m_rgInterconnects;
} VDS_LUN_INFORMATION;

Members

  • m_version
    The version of this structure. The current value is the constant VER_VDS_LUN_INFORMATION.
  • m_DeviceType
    The SCSI-2 device type of the LUN.
  • m_DeviceTypeModifier
    The SCSI-2 device type modifier of the LUN. For LUNs that have no device type modifier, the value is zero.
  • m_bCommandQueueing
    If TRUE, the LUN supports multiple outstanding commands; otherwise, FALSE. The synchronization of the queue is the responsibility of the port driver.
  • m_BusType
    The bus type of the LUN enumerated by VDS_STORAGE_BUS_TYPE.
  • m_szVendorId
    The pointer to the LUN vendor identifier; a zero-terminated, human-readable string. For devices that have no vendor identifier, the value is zero.
  • m_szProductId
    The pointer to the LUN product identifier, typically a model number; a zero-terminated, human-readable string. For devices that have no product identifier, the value is zero.
  • m_szProductRevision
    The pointer to the LUN product revision; a zero-terminated, human-readable string. For devices that have no product revision, the value is zero.
  • m_szSerialNumber
    The pointer to the LUN serial number; a zero-terminated, human-readable string. For devices that have no serial number, the value is zero.
  • m_diskSignature
    The signature of the LUN. For disks that use the Master Boot Record (MBR) partitioning structure, the first 32 bits of the GUID comprise the disk signature, and the remaining bits are zeros. For disks that use the GUID Partition Table (GPT) partitioning structure, the GUID consists of the GPT disk identifier. If this value is zero, the disk is uninitialized or the hardware provider was unable to retrieve the signature.
  • m_deviceIdDescriptor
    The array containing the LUN descriptor in various formats, such as VDSStorageIdTypeFCPHName and VDSStorageIdTypeVendorSpecific. Providers can use VDSStorageIdTypeVendorSpecific to store an arbitrary byte string of the vendor's choosing to uniquely identify the LUN. See the VDS_STORAGE_DEVICE_ID_DESCRIPTOR structure, VDS_STORAGE_IDENTIFIER structure, and VDS_STORAGE_IDENTIFIER_TYPE enumeration.
  • m_cInterconnects
    The number of interconnect ports specified in m_rgInterconnects.
  • m_rgInterconnects
    The pointer to an array of the interconnect ports by which the LUN can be accessed. See the VDS_INTERCONNECT structure.

Remarks

The VDS_LUN_INFORMATION structure includes fields from the SCSI Inquiry Data and Vital Product Data pages 0x80 and 0x83.

Requirements

Client Requires Windows Vista.
Server Requires Windows Server "Longhorn" or Windows Server 2003.
Header

Declared in VdsLun.h.

See Also

Volume Shadow Copy API Structures
VDS_INTERCONNECT
VDS_STORAGE_BUS_TYPE
VDS_STORAGE_IDENTIFIER
VDS_STORAGE_DEVICE_ID_DESCRIPTOR