SecurityPkg TcgStorageOpalLib: Check BlockSid capability.

Check the BlockSid feature capability through check
BlockSid header in the DiscoveryHeader.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Eric Dong <eric.dong@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
This commit is contained in:
Eric Dong 2016-04-22 10:54:05 +08:00 committed by Liming Gao
parent 19d539af75
commit b20e0d29fa
2 changed files with 12 additions and 0 deletions

View File

@ -76,6 +76,12 @@ typedef struct {
// 1 - The initial C_PIN_SID PIN value is equal to the C_PIN_MSID PIN value
//
UINT32 CpinUponRevert : 1;
//
// Media encryption supported (0 - not supported, 1 - supported)
//
UINT32 BlockSid : 1;
} OPAL_DISK_SUPPORT_ATTRIBUTE;
//

View File

@ -1515,6 +1515,12 @@ OpalGetSupportedAttributesInfo(
SupportedAttributes->MediaEncryption = Feat->Locking.MediaEncryption;
}
Size = 0;
Feat = (OPAL_LEVEL0_FEATURE_DESCRIPTOR*) TcgGetFeature (DiscoveryHeader, TCG_FEATURE_BLOCK_SID, &Size);
if (Feat != NULL && Size >= sizeof (TCG_BLOCK_SID_FEATURE_DESCRIPTOR)) {
SupportedAttributes->BlockSid = TRUE;
}
DEBUG ((DEBUG_INFO, "Base COMID 0x%04X \n", *OpalBaseComId));