storport.h) (PRI_REPORT_CAPABILITIES 结构

PRI_REPORT_CAPABILITIES 结构包含有关持久预留功能的信息,这些功能是在响应具有 的持久保留项命令时返回的ServiceAction=RESERVATION_ACTION_REPORT_CAPABILITIES

语法

typedef struct {
  UCHAR Length[2];
  UCHAR PersistThroughPowerLossCapable : 1;
  UCHAR Reserved : 1;
  UCHAR AllTargetPortsCapable : 1;
  UCHAR SpecifyInitiatorPortsCapable : 1;
  UCHAR CompatibleReservationHandling : 1;
  UCHAR Reserved1 : 2;
  UCHAR ReplaceLostReservationCapable : 1;
  UCHAR PersistThroughPowerLossActivated : 1;
  UCHAR Reserved2 : 3;
  UCHAR AllowCommands : 3;
  UCHAR TypeMaskValid : 1;
  UCHAR Reserved3 : 1;
  UCHAR WriteExclusive : 1;
  UCHAR Reserved4 : 1;
  UCHAR ExclusiveAccess : 1;
  UCHAR Reserved5 : 1;
  UCHAR WriteExclusiveRegistrantsOnly : 1;
  UCHAR ExclusiveAccessRegistrantsOnly : 1;
  UCHAR WriteExclusiveAllRegistrants : 1;
  UCHAR ExclusiveAccessAllRegistrants : 1;
  UCHAR Reserved6 : 7;
  UCHAR Reserved7[2];
} PRI_REPORT_CAPABILITIES, *PPRI_REPORT_CAPABILITIES;

成员

Length[2]

此结构的大小。

PersistThroughPowerLossCapable

指示设备服务器支持通过断电事件持久保存。

Reserved

保留以供内部使用。

AllTargetPortsCapable

指示设备服务器支持所有目标端口。

SpecifyInitiatorPortsCapable

指示设备服务器支持指定发起程序端口。

CompatibleReservationHandling

指示设备服务器向后兼容 SPC-2。

Reserved1

保留以供内部使用。

ReplaceLostReservationCapable

指示设备服务器支持替换丢失的预留。

PersistThroughPowerLossActivated

指示已激活持续断电功能。

Reserved2

保留以供内部使用。

AllowCommands

指示是否允许通过某些类型的永久性预留使用某些命令。

说明
0 未提供有关是否允许通过某些类型的永久性预留使用某些命令的信息。
1 设备服务器通过写入独占类型预留和独占访问类型预留来允许 TEST UNIT READY 命令。 设备服务器未提供有关是否允许通过写入独占类型预留使用以下命令的信息:
  1. MODE SENSE
  2. READ 属性
  3. READ BUFFER (10)
  4. 接收诊断结果
  5. 报告支持的操作代码
  6. 报表支持的任务管理功能
  7. 读取缺陷数据
2 设备服务器通过写入独占类型预留和独占访问类型预留来允许 TEST UNIT READY 命令。 设备服务器不允许通过写入独占类型预留执行以下命令:
  1. MODE SENSE
  2. READ 属性
  3. READ BUFFER (10)
  4. 接收诊断结果
  5. 报告支持的操作代码
  6. 报表支持的任务管理功能
  7. 读取缺陷数据
3 设备服务器通过写入独占和独占访问类型预留允许 TEST UNIT READY 命令。 以及通过写入独占类型预留的以下命令:
  1. MODE SENSE
  2. READ 属性
  3. READ BUFFER (10)
  4. 接收诊断结果
  5. 报告支持的操作代码
  6. 报表支持的任务管理功能
  7. 读取缺陷数据
4 设备服务器允许 TEST UNIT READY 命令通过写入独占和独占访问永久性预留。 以下命令通过写入独占保留保留:
  1. MODE SENSE
  2. READ 属性
  3. READ BUFFER (10)
  4. 接收诊断结果
  5. 报告支持的操作代码
  6. 报表支持的任务管理功能
  7. 读取缺陷数据
5 设备服务器允许:
  1. 以下命令通过写入独占和独占访问永久性预留:
    1. TEST UNIT READY
    2. 报告支持的操作代码
    3. 报表支持的任务管理功能
  2. 以下命令通过写入独占永久性预留:
    1. MODE SENSE
    2. READ 属性
    3. READ BUFFER (10)
    4. 接收诊断结果
    5. 读取缺陷数据
所有其他 预留

TypeMaskValid

包含一个位掩码,指示设备服务器支持的永久性预留类型。

Reserved3

保留以供内部使用。

WriteExclusive

指示设备服务器支持写独占永久性预留类型。

Reserved4

保留以供内部使用。

ExclusiveAccess

指示设备服务器支持独占访问持久性预留类型。

Reserved5

保留以供内部使用。

WriteExclusiveRegistrantsOnly

指示设备服务器支持写入独占 – 仅注册者永久预留类型。

ExclusiveAccessRegistrantsOnly

指示设备服务器支持独占访问 - 仅注册者永久预留类型。

WriteExclusiveAllRegistrants

指示设备服务器支持写入独占 – 所有注册者永久性预留类型。

ExclusiveAccessAllRegistrants

指示设备服务器支持独占访问 - 所有注册者永久性预留类型。

Reserved6

保留以供内部使用。

Reserved7[2]

保留以供内部使用。

要求

要求
Header storport.h