\r
#pragma pack(1)\r
typedef struct {\r
- UINT8 HardwareReset : 1;\r
- UINT8 Reserved : 7;\r
+ UINT8 HardwareReset : 1;\r
+ UINT8 Reserved : 7;\r
} TCG_BLOCK_SID_CLEAR_EVENTS;\r
#pragma pack()\r
\r
-#define TRUSTED_COMMAND_TIMEOUT_NS ((UINT64) 5 * ((UINT64)(1000000)) * 1000) // 5 seconds\r
-#define BUFFER_SIZE 512\r
+#define TRUSTED_COMMAND_TIMEOUT_NS ((UINT64) 5 * ((UINT64)(1000000)) * 1000) // 5 seconds\r
+#define BUFFER_SIZE 512\r
\r
/**\r
The function performs a Trusted Send of a Buffer containing a TCG_COM_PACKET.\r
\r
**/\r
TCG_RESULT\r
-OpalTrustedSend(\r
+OpalTrustedSend (\r
EFI_STORAGE_SECURITY_COMMAND_PROTOCOL *Sscp,\r
UINT32 MediaId,\r
UINT8 SecurityProtocol,\r
return TcgResultFailureBufferTooSmall;\r
}\r
\r
- ZeroMem((UINT8*)Buffer + TransferLength, TransferLength512 - TransferLength);\r
+ ZeroMem ((UINT8 *)Buffer + TransferLength, TransferLength512 - TransferLength);\r
\r
- Status = Sscp->SendData(\r
- Sscp,\r
- MediaId,\r
- TRUSTED_COMMAND_TIMEOUT_NS,\r
- SecurityProtocol,\r
- SwapBytes16(SpSpecific),\r
- TransferLength512,\r
- Buffer\r
- );\r
+ Status = Sscp->SendData (\r
+ Sscp,\r
+ MediaId,\r
+ TRUSTED_COMMAND_TIMEOUT_NS,\r
+ SecurityProtocol,\r
+ SwapBytes16 (SpSpecific),\r
+ TransferLength512,\r
+ Buffer\r
+ );\r
\r
return Status == EFI_SUCCESS ? TcgResultSuccess : TcgResultFailure;\r
}\r
\r
**/\r
TCG_RESULT\r
-OpalTrustedRecv(\r
+OpalTrustedRecv (\r
EFI_STORAGE_SECURITY_COMMAND_PROTOCOL *Sscp,\r
UINT32 MediaId,\r
UINT8 SecurityProtocol,\r
// Round Buffer Size down to a 512-byte multiple\r
//\r
TransferLength512 = BufferSize & ~(UINTN)511;\r
- Tries = 0;\r
- ComPacket = NULL;\r
- Length = 0;\r
- OutstandingData = 0;\r
+ Tries = 0;\r
+ ComPacket = NULL;\r
+ Length = 0;\r
+ OutstandingData = 0;\r
\r
- if (TransferLength512 < sizeof(TCG_COM_PACKET)) {\r
+ if (TransferLength512 < sizeof (TCG_COM_PACKET)) {\r
DEBUG ((DEBUG_INFO, "transferLength %u too small for ComPacket\n", TransferLength512));\r
return TcgResultFailureBufferTooSmall;\r
}\r
} else {\r
Tries = 5000;\r
}\r
+\r
while ((Tries--) > 0) {\r
- ZeroMem( Buffer, BufferSize );\r
+ ZeroMem (Buffer, BufferSize);\r
TransferSize = 0;\r
\r
- Status = Sscp->ReceiveData(\r
- Sscp,\r
- MediaId,\r
- TRUSTED_COMMAND_TIMEOUT_NS,\r
- SecurityProtocol,\r
- SwapBytes16(SpSpecific),\r
- TransferLength512,\r
- Buffer,\r
- &TransferSize\r
- );\r
+ Status = Sscp->ReceiveData (\r
+ Sscp,\r
+ MediaId,\r
+ TRUSTED_COMMAND_TIMEOUT_NS,\r
+ SecurityProtocol,\r
+ SwapBytes16 (SpSpecific),\r
+ TransferLength512,\r
+ Buffer,\r
+ &TransferSize\r
+ );\r
if (EFI_ERROR (Status)) {\r
return TcgResultFailure;\r
}\r
\r
- if (SecurityProtocol != TCG_OPAL_SECURITY_PROTOCOL_1 && SecurityProtocol != TCG_OPAL_SECURITY_PROTOCOL_2) {\r
+ if ((SecurityProtocol != TCG_OPAL_SECURITY_PROTOCOL_1) && (SecurityProtocol != TCG_OPAL_SECURITY_PROTOCOL_2)) {\r
return TcgResultSuccess;\r
}\r
\r
return TcgResultSuccess;\r
}\r
\r
- ComPacket = (TCG_COM_PACKET*) Buffer;\r
- Length = SwapBytes32(ComPacket->LengthBE);\r
- OutstandingData = SwapBytes32( ComPacket->OutstandingDataBE );\r
+ ComPacket = (TCG_COM_PACKET *)Buffer;\r
+ Length = SwapBytes32 (ComPacket->LengthBE);\r
+ OutstandingData = SwapBytes32 (ComPacket->OutstandingDataBE);\r
\r
- if (Length != 0 && OutstandingData == 0) {\r
+ if ((Length != 0) && (OutstandingData == 0)) {\r
return TcgResultSuccess;\r
}\r
\r
TCG_RESULT\r
EFIAPI\r
OpalPerformMethod (\r
- OPAL_SESSION *Session,\r
- UINT32 SendSize,\r
- VOID *Buffer,\r
- UINT32 BufferSize,\r
- TCG_PARSE_STRUCT *ParseStruct,\r
- UINT8 *MethodStatus,\r
- UINT32 EstimateTimeCost\r
+ OPAL_SESSION *Session,\r
+ UINT32 SendSize,\r
+ VOID *Buffer,\r
+ UINT32 BufferSize,\r
+ TCG_PARSE_STRUCT *ParseStruct,\r
+ UINT8 *MethodStatus,\r
+ UINT32 EstimateTimeCost\r
)\r
{\r
- NULL_CHECK(Session);\r
- NULL_CHECK(MethodStatus);\r
-\r
- ERROR_CHECK(OpalTrustedSend(\r
- Session->Sscp,\r
- Session->MediaId,\r
- TCG_OPAL_SECURITY_PROTOCOL_1,\r
- Session->OpalBaseComId,\r
- SendSize,\r
- Buffer,\r
- BufferSize\r
- ));\r
-\r
- ERROR_CHECK(OpalTrustedRecv(\r
- Session->Sscp,\r
- Session->MediaId,\r
- TCG_OPAL_SECURITY_PROTOCOL_1,\r
- Session->OpalBaseComId,\r
- Buffer,\r
- BufferSize,\r
- EstimateTimeCost\r
- ));\r
-\r
- ERROR_CHECK(TcgInitTcgParseStruct(ParseStruct, Buffer, BufferSize));\r
- ERROR_CHECK(TcgCheckComIds(ParseStruct, Session->OpalBaseComId, Session->ComIdExtension));\r
- ERROR_CHECK(TcgGetMethodStatus(ParseStruct, MethodStatus));\r
+ NULL_CHECK (Session);\r
+ NULL_CHECK (MethodStatus);\r
+\r
+ ERROR_CHECK (\r
+ OpalTrustedSend (\r
+ Session->Sscp,\r
+ Session->MediaId,\r
+ TCG_OPAL_SECURITY_PROTOCOL_1,\r
+ Session->OpalBaseComId,\r
+ SendSize,\r
+ Buffer,\r
+ BufferSize\r
+ )\r
+ );\r
+\r
+ ERROR_CHECK (\r
+ OpalTrustedRecv (\r
+ Session->Sscp,\r
+ Session->MediaId,\r
+ TCG_OPAL_SECURITY_PROTOCOL_1,\r
+ Session->OpalBaseComId,\r
+ Buffer,\r
+ BufferSize,\r
+ EstimateTimeCost\r
+ )\r
+ );\r
+\r
+ ERROR_CHECK (TcgInitTcgParseStruct (ParseStruct, Buffer, BufferSize));\r
+ ERROR_CHECK (TcgCheckComIds (ParseStruct, Session->OpalBaseComId, Session->ComIdExtension));\r
+ ERROR_CHECK (TcgGetMethodStatus (ParseStruct, MethodStatus));\r
\r
return TcgResultSuccess;\r
}\r
**/\r
TCG_RESULT\r
EFIAPI\r
-OpalBlockSid(\r
- OPAL_SESSION *Session,\r
- BOOLEAN HardwareReset\r
+OpalBlockSid (\r
+ OPAL_SESSION *Session,\r
+ BOOLEAN HardwareReset\r
)\r
{\r
- UINT8 Buffer[BUFFER_SIZE];\r
- TCG_BLOCK_SID_CLEAR_EVENTS *ClearEvents;\r
+ UINT8 Buffer[BUFFER_SIZE];\r
+ TCG_BLOCK_SID_CLEAR_EVENTS *ClearEvents;\r
\r
- NULL_CHECK(Session);\r
+ NULL_CHECK (Session);\r
\r
//\r
// Set Hardware Reset bit\r
//\r
- ClearEvents = (TCG_BLOCK_SID_CLEAR_EVENTS *) &Buffer[0];\r
+ ClearEvents = (TCG_BLOCK_SID_CLEAR_EVENTS *)&Buffer[0];\r
\r
- ClearEvents->Reserved = 0;\r
+ ClearEvents->Reserved = 0;\r
ClearEvents->HardwareReset = HardwareReset;\r
\r
- return(OpalTrustedSend(\r
- Session->Sscp,\r
- Session->MediaId,\r
- TCG_OPAL_SECURITY_PROTOCOL_2,\r
- TCG_BLOCKSID_COMID, // hardcode ComID 0x0005\r
- 1,\r
- Buffer,\r
- BUFFER_SIZE\r
- ));\r
+ return (OpalTrustedSend (\r
+ Session->Sscp,\r
+ Session->MediaId,\r
+ TCG_OPAL_SECURITY_PROTOCOL_2,\r
+ TCG_BLOCKSID_COMID, // hardcode ComID 0x0005\r
+ 1,\r
+ Buffer,\r
+ BUFFER_SIZE\r
+ ));\r
}\r
\r
/**\r
**/\r
TCG_RESULT\r
EFIAPI\r
-OpalPsidRevert(\r
- OPAL_SESSION *AdminSpSession\r
+OpalPsidRevert (\r
+ OPAL_SESSION *AdminSpSession\r
)\r
{\r
//\r
UINT8 Buffer[BUFFER_SIZE];\r
UINT8 MethodStatus;\r
\r
- NULL_CHECK(AdminSpSession);\r
+ NULL_CHECK (AdminSpSession);\r
\r
//\r
// Send Revert action on Admin SP\r
//\r
- ERROR_CHECK(TcgInitTcgCreateStruct(&CreateStruct, Buffer, BUFFER_SIZE));\r
- ERROR_CHECK(TcgStartComPacket(&CreateStruct, AdminSpSession->OpalBaseComId, AdminSpSession->ComIdExtension));\r
- ERROR_CHECK(TcgStartPacket(&CreateStruct, AdminSpSession->TperSessionId, AdminSpSession->HostSessionId, 0x0, 0x0, 0x0));\r
- ERROR_CHECK(TcgStartSubPacket(&CreateStruct, 0x0));\r
- ERROR_CHECK(TcgStartMethodCall(&CreateStruct, OPAL_UID_ADMIN_SP, OPAL_ADMIN_SP_REVERT_METHOD));\r
- ERROR_CHECK(TcgStartParameters(&CreateStruct));\r
- ERROR_CHECK(TcgEndParameters(&CreateStruct));\r
- ERROR_CHECK(TcgEndMethodCall(&CreateStruct));\r
- ERROR_CHECK(TcgEndSubPacket(&CreateStruct));\r
- ERROR_CHECK(TcgEndPacket(&CreateStruct));\r
- ERROR_CHECK(TcgEndComPacket(&CreateStruct, &Size));\r
+ ERROR_CHECK (TcgInitTcgCreateStruct (&CreateStruct, Buffer, BUFFER_SIZE));\r
+ ERROR_CHECK (TcgStartComPacket (&CreateStruct, AdminSpSession->OpalBaseComId, AdminSpSession->ComIdExtension));\r
+ ERROR_CHECK (TcgStartPacket (&CreateStruct, AdminSpSession->TperSessionId, AdminSpSession->HostSessionId, 0x0, 0x0, 0x0));\r
+ ERROR_CHECK (TcgStartSubPacket (&CreateStruct, 0x0));\r
+ ERROR_CHECK (TcgStartMethodCall (&CreateStruct, OPAL_UID_ADMIN_SP, OPAL_ADMIN_SP_REVERT_METHOD));\r
+ ERROR_CHECK (TcgStartParameters (&CreateStruct));\r
+ ERROR_CHECK (TcgEndParameters (&CreateStruct));\r
+ ERROR_CHECK (TcgEndMethodCall (&CreateStruct));\r
+ ERROR_CHECK (TcgEndSubPacket (&CreateStruct));\r
+ ERROR_CHECK (TcgEndPacket (&CreateStruct));\r
+ ERROR_CHECK (TcgEndComPacket (&CreateStruct, &Size));\r
\r
//\r
// Send Revert Method Call\r
//\r
- ERROR_CHECK(OpalPerformMethod(AdminSpSession, Size, Buffer, BUFFER_SIZE, &ParseStruct, &MethodStatus, 0));\r
- METHOD_STATUS_ERROR_CHECK(MethodStatus, TcgResultFailure);\r
+ ERROR_CHECK (OpalPerformMethod (AdminSpSession, Size, Buffer, BUFFER_SIZE, &ParseStruct, &MethodStatus, 0));\r
+ METHOD_STATUS_ERROR_CHECK (MethodStatus, TcgResultFailure);\r
\r
return TcgResultSuccess;\r
}\r
\r
**/\r
TCG_RESULT\r
-OpalPyrite2PsidRevert(\r
- OPAL_SESSION *AdminSpSession,\r
- UINT32 EstimateTimeCost\r
+OpalPyrite2PsidRevert (\r
+ OPAL_SESSION *AdminSpSession,\r
+ UINT32 EstimateTimeCost\r
)\r
{\r
//\r
UINT8 Buffer[BUFFER_SIZE];\r
UINT8 MethodStatus;\r
\r
-\r
- NULL_CHECK(AdminSpSession);\r
+ NULL_CHECK (AdminSpSession);\r
\r
//\r
// Send Revert action on Admin SP\r
//\r
- ERROR_CHECK(TcgInitTcgCreateStruct(&CreateStruct, Buffer, BUFFER_SIZE));\r
- ERROR_CHECK(TcgStartComPacket(&CreateStruct, AdminSpSession->OpalBaseComId, AdminSpSession->ComIdExtension));\r
- ERROR_CHECK(TcgStartPacket(&CreateStruct, AdminSpSession->TperSessionId, AdminSpSession->HostSessionId, 0x0, 0x0, 0x0));\r
- ERROR_CHECK(TcgStartSubPacket(&CreateStruct, 0x0));\r
- ERROR_CHECK(TcgStartMethodCall(&CreateStruct, OPAL_UID_ADMIN_SP, OPAL_ADMIN_SP_REVERT_METHOD));\r
- ERROR_CHECK(TcgStartParameters(&CreateStruct));\r
- ERROR_CHECK(TcgEndParameters(&CreateStruct));\r
- ERROR_CHECK(TcgEndMethodCall(&CreateStruct));\r
- ERROR_CHECK(TcgEndSubPacket(&CreateStruct));\r
- ERROR_CHECK(TcgEndPacket(&CreateStruct));\r
- ERROR_CHECK(TcgEndComPacket(&CreateStruct, &Size));\r
+ ERROR_CHECK (TcgInitTcgCreateStruct (&CreateStruct, Buffer, BUFFER_SIZE));\r
+ ERROR_CHECK (TcgStartComPacket (&CreateStruct, AdminSpSession->OpalBaseComId, AdminSpSession->ComIdExtension));\r
+ ERROR_CHECK (TcgStartPacket (&CreateStruct, AdminSpSession->TperSessionId, AdminSpSession->HostSessionId, 0x0, 0x0, 0x0));\r
+ ERROR_CHECK (TcgStartSubPacket (&CreateStruct, 0x0));\r
+ ERROR_CHECK (TcgStartMethodCall (&CreateStruct, OPAL_UID_ADMIN_SP, OPAL_ADMIN_SP_REVERT_METHOD));\r
+ ERROR_CHECK (TcgStartParameters (&CreateStruct));\r
+ ERROR_CHECK (TcgEndParameters (&CreateStruct));\r
+ ERROR_CHECK (TcgEndMethodCall (&CreateStruct));\r
+ ERROR_CHECK (TcgEndSubPacket (&CreateStruct));\r
+ ERROR_CHECK (TcgEndPacket (&CreateStruct));\r
+ ERROR_CHECK (TcgEndComPacket (&CreateStruct, &Size));\r
\r
//\r
// Send Revert Method Call\r
//\r
- ERROR_CHECK(OpalPerformMethod(AdminSpSession, Size, Buffer, BUFFER_SIZE, &ParseStruct, &MethodStatus, EstimateTimeCost));\r
- METHOD_STATUS_ERROR_CHECK(MethodStatus, TcgResultFailure);\r
+ ERROR_CHECK (OpalPerformMethod (AdminSpSession, Size, Buffer, BUFFER_SIZE, &ParseStruct, &MethodStatus, EstimateTimeCost));\r
+ METHOD_STATUS_ERROR_CHECK (MethodStatus, TcgResultFailure);\r
\r
return TcgResultSuccess;\r
}\r
**/\r
TCG_RESULT\r
EFIAPI\r
-OpalRetrieveLevel0DiscoveryHeader(\r
- OPAL_SESSION *Session,\r
- UINTN BufferSize,\r
- VOID *BuffAddress\r
+OpalRetrieveLevel0DiscoveryHeader (\r
+ OPAL_SESSION *Session,\r
+ UINTN BufferSize,\r
+ VOID *BuffAddress\r
)\r
{\r
- return (OpalTrustedRecv(\r
- Session->Sscp,\r
- Session->MediaId,\r
- TCG_OPAL_SECURITY_PROTOCOL_1, // SP\r
- TCG_SP_SPECIFIC_PROTOCOL_LEVEL0_DISCOVERY, // SP_Specific\r
- BuffAddress,\r
- BufferSize,\r
- 0\r
+ return (OpalTrustedRecv (\r
+ Session->Sscp,\r
+ Session->MediaId,\r
+ TCG_OPAL_SECURITY_PROTOCOL_1, // SP\r
+ TCG_SP_SPECIFIC_PROTOCOL_LEVEL0_DISCOVERY, // SP_Specific\r
+ BuffAddress,\r
+ BufferSize,\r
+ 0\r
));\r
}\r
\r
**/\r
TCG_RESULT\r
EFIAPI\r
-OpalRetrieveSupportedProtocolList(\r
- OPAL_SESSION *Session,\r
- UINTN BufferSize,\r
- VOID *BuffAddress\r
+OpalRetrieveSupportedProtocolList (\r
+ OPAL_SESSION *Session,\r
+ UINTN BufferSize,\r
+ VOID *BuffAddress\r
)\r
{\r
- return (OpalTrustedRecv(\r
- Session->Sscp,\r
- Session->MediaId,\r
- TCG_SECURITY_PROTOCOL_INFO, // SP\r
- TCG_SP_SPECIFIC_PROTOCOL_LIST, // SP_Specific\r
- BuffAddress,\r
- BufferSize,\r
- 0\r
- ));\r
+ return (OpalTrustedRecv (\r
+ Session->Sscp,\r
+ Session->MediaId,\r
+ TCG_SECURITY_PROTOCOL_INFO, // SP\r
+ TCG_SP_SPECIFIC_PROTOCOL_LIST, // SP_Specific\r
+ BuffAddress,\r
+ BufferSize,\r
+ 0\r
+ ));\r
}\r
\r
/**\r
**/\r
TCG_RESULT\r
EFIAPI\r
-OpalStartSession(\r
- OPAL_SESSION *Session,\r
- TCG_UID SpId,\r
- BOOLEAN Write,\r
- UINT32 HostChallengeLength,\r
- const VOID *HostChallenge,\r
- TCG_UID HostSigningAuthority,\r
- UINT8 *MethodStatus\r
+OpalStartSession (\r
+ OPAL_SESSION *Session,\r
+ TCG_UID SpId,\r
+ BOOLEAN Write,\r
+ UINT32 HostChallengeLength,\r
+ const VOID *HostChallenge,\r
+ TCG_UID HostSigningAuthority,\r
+ UINT8 *MethodStatus\r
)\r
{\r
- TCG_CREATE_STRUCT CreateStruct;\r
- TCG_PARSE_STRUCT ParseStruct;\r
- UINT32 Size;\r
- UINT8 Buf[BUFFER_SIZE];\r
- UINT16 ComIdExtension;\r
- UINT32 HostSessionId;\r
+ TCG_CREATE_STRUCT CreateStruct;\r
+ TCG_PARSE_STRUCT ParseStruct;\r
+ UINT32 Size;\r
+ UINT8 Buf[BUFFER_SIZE];\r
+ UINT16 ComIdExtension;\r
+ UINT32 HostSessionId;\r
\r
ComIdExtension = 0;\r
HostSessionId = 1;\r
\r
- NULL_CHECK(Session);\r
- NULL_CHECK(MethodStatus);\r
+ NULL_CHECK (Session);\r
+ NULL_CHECK (MethodStatus);\r
\r
Session->ComIdExtension = ComIdExtension;\r
- Session->HostSessionId = HostSessionId;\r
-\r
- ERROR_CHECK(TcgInitTcgCreateStruct(&CreateStruct, Buf, sizeof(Buf)));\r
- ERROR_CHECK(TcgCreateStartSession(\r
- &CreateStruct,\r
- &Size,\r
- Session->OpalBaseComId,\r
- ComIdExtension,\r
- HostSessionId,\r
- SpId,\r
- Write,\r
- HostChallengeLength,\r
- HostChallenge,\r
- HostSigningAuthority\r
- ));\r
- ERROR_CHECK(OpalPerformMethod(Session, Size, Buf, sizeof(Buf), &ParseStruct, MethodStatus, 0));\r
+ Session->HostSessionId = HostSessionId;\r
+\r
+ ERROR_CHECK (TcgInitTcgCreateStruct (&CreateStruct, Buf, sizeof (Buf)));\r
+ ERROR_CHECK (\r
+ TcgCreateStartSession (\r
+ &CreateStruct,\r
+ &Size,\r
+ Session->OpalBaseComId,\r
+ ComIdExtension,\r
+ HostSessionId,\r
+ SpId,\r
+ Write,\r
+ HostChallengeLength,\r
+ HostChallenge,\r
+ HostSigningAuthority\r
+ )\r
+ );\r
+ ERROR_CHECK (OpalPerformMethod (Session, Size, Buf, sizeof (Buf), &ParseStruct, MethodStatus, 0));\r
if (*MethodStatus != TCG_METHOD_STATUS_CODE_SUCCESS) {\r
return TcgResultSuccess; // return early if method failed - user must check MethodStatus\r
}\r
\r
- if (TcgParseSyncSession(&ParseStruct, Session->OpalBaseComId, ComIdExtension, HostSessionId, &Session->TperSessionId) != TcgResultSuccess) {\r
- OpalEndSession(Session);\r
+ if (TcgParseSyncSession (&ParseStruct, Session->OpalBaseComId, ComIdExtension, HostSessionId, &Session->TperSessionId) != TcgResultSuccess) {\r
+ OpalEndSession (Session);\r
return TcgResultFailure;\r
}\r
\r
**/\r
TCG_RESULT\r
EFIAPI\r
-OpalEndSession(\r
- OPAL_SESSION *Session\r
+OpalEndSession (\r
+ OPAL_SESSION *Session\r
)\r
{\r
- UINT8 Buffer[BUFFER_SIZE];\r
- TCG_CREATE_STRUCT CreateStruct;\r
- UINT32 Size;\r
- TCG_PARSE_STRUCT ParseStruct;\r
-\r
- NULL_CHECK(Session);\r
- ERROR_CHECK(TcgInitTcgCreateStruct(&CreateStruct, Buffer, sizeof(Buffer)));\r
- ERROR_CHECK(TcgCreateEndSession(\r
- &CreateStruct,\r
- &Size,\r
- Session->OpalBaseComId,\r
- Session->ComIdExtension,\r
- Session->HostSessionId,\r
- Session->TperSessionId\r
- ));\r
-\r
- ERROR_CHECK(OpalTrustedSend(\r
- Session->Sscp,\r
- Session->MediaId,\r
- TCG_OPAL_SECURITY_PROTOCOL_1,\r
- Session->OpalBaseComId,\r
- Size,\r
- Buffer,\r
- sizeof(Buffer)\r
- ));\r
-\r
- ERROR_CHECK(OpalTrustedRecv(\r
- Session->Sscp,\r
- Session->MediaId,\r
- TCG_OPAL_SECURITY_PROTOCOL_1,\r
- Session->OpalBaseComId,\r
- Buffer,\r
- sizeof(Buffer),\r
- 0\r
- ));\r
-\r
- ERROR_CHECK(TcgInitTcgParseStruct(&ParseStruct, Buffer, sizeof(Buffer)));\r
- ERROR_CHECK(TcgCheckComIds(&ParseStruct, Session->OpalBaseComId, Session->ComIdExtension));\r
-\r
- ERROR_CHECK(TcgGetNextEndOfSession(&ParseStruct));\r
+ UINT8 Buffer[BUFFER_SIZE];\r
+ TCG_CREATE_STRUCT CreateStruct;\r
+ UINT32 Size;\r
+ TCG_PARSE_STRUCT ParseStruct;\r
+\r
+ NULL_CHECK (Session);\r
+ ERROR_CHECK (TcgInitTcgCreateStruct (&CreateStruct, Buffer, sizeof (Buffer)));\r
+ ERROR_CHECK (\r
+ TcgCreateEndSession (\r
+ &CreateStruct,\r
+ &Size,\r
+ Session->OpalBaseComId,\r
+ Session->ComIdExtension,\r
+ Session->HostSessionId,\r
+ Session->TperSessionId\r
+ )\r
+ );\r
+\r
+ ERROR_CHECK (\r
+ OpalTrustedSend (\r
+ Session->Sscp,\r
+ Session->MediaId,\r
+ TCG_OPAL_SECURITY_PROTOCOL_1,\r
+ Session->OpalBaseComId,\r
+ Size,\r
+ Buffer,\r
+ sizeof (Buffer)\r
+ )\r
+ );\r
+\r
+ ERROR_CHECK (\r
+ OpalTrustedRecv (\r
+ Session->Sscp,\r
+ Session->MediaId,\r
+ TCG_OPAL_SECURITY_PROTOCOL_1,\r
+ Session->OpalBaseComId,\r
+ Buffer,\r
+ sizeof (Buffer),\r
+ 0\r
+ )\r
+ );\r
+\r
+ ERROR_CHECK (TcgInitTcgParseStruct (&ParseStruct, Buffer, sizeof (Buffer)));\r
+ ERROR_CHECK (TcgCheckComIds (&ParseStruct, Session->OpalBaseComId, Session->ComIdExtension));\r
+\r
+ ERROR_CHECK (TcgGetNextEndOfSession (&ParseStruct));\r
return TcgResultSuccess;\r
}\r
\r
**/\r
TCG_RESULT\r
EFIAPI\r
-OpalGetMsid(\r
- OPAL_SESSION *AdminSpSession,\r
- UINT32 MsidBufferSize,\r
- UINT8 *Msid,\r
- UINT32 *MsidLength\r
+OpalGetMsid (\r
+ OPAL_SESSION *AdminSpSession,\r
+ UINT32 MsidBufferSize,\r
+ UINT8 *Msid,\r
+ UINT32 *MsidLength\r
)\r
{\r
//\r
// we'll attempt to start Session as PSID authority\r
// verify PSID Authority is defined in ADMIN SP authority table... is this possible?\r
//\r
- TCG_CREATE_STRUCT CreateStruct;\r
- TCG_PARSE_STRUCT ParseStruct;\r
- UINT32 Size;\r
- UINT8 MethodStatus;\r
- UINT32 Col;\r
- const VOID *RecvMsid;\r
- UINT8 Buffer[BUFFER_SIZE];\r
-\r
- NULL_CHECK(AdminSpSession);\r
- NULL_CHECK(Msid);\r
- NULL_CHECK(MsidLength);\r
-\r
- ERROR_CHECK(TcgInitTcgCreateStruct(&CreateStruct, Buffer, BUFFER_SIZE));\r
- ERROR_CHECK(TcgStartComPacket(&CreateStruct, AdminSpSession->OpalBaseComId, AdminSpSession->ComIdExtension));\r
- ERROR_CHECK(TcgStartPacket(&CreateStruct, AdminSpSession->TperSessionId, AdminSpSession->HostSessionId, 0x0, 0x0, 0x0));\r
- ERROR_CHECK(TcgStartSubPacket(&CreateStruct, 0x0));\r
- ERROR_CHECK(TcgStartMethodCall(&CreateStruct, OPAL_UID_ADMIN_SP_C_PIN_MSID, TCG_UID_METHOD_GET));\r
- ERROR_CHECK(TcgStartParameters(&CreateStruct));\r
- ERROR_CHECK(TcgAddStartList(&CreateStruct));\r
- ERROR_CHECK(TcgAddStartName(&CreateStruct));\r
- ERROR_CHECK(TcgAddUINT8(&CreateStruct, TCG_CELL_BLOCK_START_COLUMN_NAME));\r
- ERROR_CHECK(TcgAddUINT8(&CreateStruct, OPAL_ADMIN_SP_PIN_COL));\r
- ERROR_CHECK(TcgAddEndName(&CreateStruct));\r
- ERROR_CHECK(TcgAddStartName(&CreateStruct));\r
- ERROR_CHECK(TcgAddUINT8(&CreateStruct, TCG_CELL_BLOCK_END_COLUMN_NAME));\r
- ERROR_CHECK(TcgAddUINT8(&CreateStruct, OPAL_ADMIN_SP_PIN_COL));\r
- ERROR_CHECK(TcgAddEndName(&CreateStruct));\r
- ERROR_CHECK(TcgAddEndList(&CreateStruct));\r
- ERROR_CHECK(TcgEndParameters(&CreateStruct));\r
- ERROR_CHECK(TcgEndMethodCall(&CreateStruct));\r
- ERROR_CHECK(TcgEndSubPacket(&CreateStruct));\r
- ERROR_CHECK(TcgEndPacket(&CreateStruct));\r
- ERROR_CHECK(TcgEndComPacket(&CreateStruct, &Size));\r
+ TCG_CREATE_STRUCT CreateStruct;\r
+ TCG_PARSE_STRUCT ParseStruct;\r
+ UINT32 Size;\r
+ UINT8 MethodStatus;\r
+ UINT32 Col;\r
+ const VOID *RecvMsid;\r
+ UINT8 Buffer[BUFFER_SIZE];\r
+\r
+ NULL_CHECK (AdminSpSession);\r
+ NULL_CHECK (Msid);\r
+ NULL_CHECK (MsidLength);\r
+\r
+ ERROR_CHECK (TcgInitTcgCreateStruct (&CreateStruct, Buffer, BUFFER_SIZE));\r
+ ERROR_CHECK (TcgStartComPacket (&CreateStruct, AdminSpSession->OpalBaseComId, AdminSpSession->ComIdExtension));\r
+ ERROR_CHECK (TcgStartPacket (&CreateStruct, AdminSpSession->TperSessionId, AdminSpSession->HostSessionId, 0x0, 0x0, 0x0));\r
+ ERROR_CHECK (TcgStartSubPacket (&CreateStruct, 0x0));\r
+ ERROR_CHECK (TcgStartMethodCall (&CreateStruct, OPAL_UID_ADMIN_SP_C_PIN_MSID, TCG_UID_METHOD_GET));\r
+ ERROR_CHECK (TcgStartParameters (&CreateStruct));\r
+ ERROR_CHECK (TcgAddStartList (&CreateStruct));\r
+ ERROR_CHECK (TcgAddStartName (&CreateStruct));\r
+ ERROR_CHECK (TcgAddUINT8 (&CreateStruct, TCG_CELL_BLOCK_START_COLUMN_NAME));\r
+ ERROR_CHECK (TcgAddUINT8 (&CreateStruct, OPAL_ADMIN_SP_PIN_COL));\r
+ ERROR_CHECK (TcgAddEndName (&CreateStruct));\r
+ ERROR_CHECK (TcgAddStartName (&CreateStruct));\r
+ ERROR_CHECK (TcgAddUINT8 (&CreateStruct, TCG_CELL_BLOCK_END_COLUMN_NAME));\r
+ ERROR_CHECK (TcgAddUINT8 (&CreateStruct, OPAL_ADMIN_SP_PIN_COL));\r
+ ERROR_CHECK (TcgAddEndName (&CreateStruct));\r
+ ERROR_CHECK (TcgAddEndList (&CreateStruct));\r
+ ERROR_CHECK (TcgEndParameters (&CreateStruct));\r
+ ERROR_CHECK (TcgEndMethodCall (&CreateStruct));\r
+ ERROR_CHECK (TcgEndSubPacket (&CreateStruct));\r
+ ERROR_CHECK (TcgEndPacket (&CreateStruct));\r
+ ERROR_CHECK (TcgEndComPacket (&CreateStruct, &Size));\r
\r
//\r
// Send MSID Method Call\r
//\r
- ERROR_CHECK(OpalPerformMethod(AdminSpSession, Size, Buffer, BUFFER_SIZE, &ParseStruct, &MethodStatus, 0));\r
- METHOD_STATUS_ERROR_CHECK(MethodStatus, TcgResultFailure);\r
+ ERROR_CHECK (OpalPerformMethod (AdminSpSession, Size, Buffer, BUFFER_SIZE, &ParseStruct, &MethodStatus, 0));\r
+ METHOD_STATUS_ERROR_CHECK (MethodStatus, TcgResultFailure);\r
\r
- ERROR_CHECK(TcgGetNextStartList(&ParseStruct));\r
- ERROR_CHECK(TcgGetNextStartList(&ParseStruct));\r
- ERROR_CHECK(TcgGetNextStartName(&ParseStruct));\r
- ERROR_CHECK(TcgGetNextUINT32(&ParseStruct, &Col));\r
- ERROR_CHECK(TcgGetNextByteSequence(&ParseStruct, &RecvMsid, MsidLength));\r
- ERROR_CHECK(TcgGetNextEndName(&ParseStruct));\r
- ERROR_CHECK(TcgGetNextEndList(&ParseStruct));\r
- ERROR_CHECK(TcgGetNextEndList(&ParseStruct));\r
- ERROR_CHECK(TcgGetNextEndOfData(&ParseStruct));\r
+ ERROR_CHECK (TcgGetNextStartList (&ParseStruct));\r
+ ERROR_CHECK (TcgGetNextStartList (&ParseStruct));\r
+ ERROR_CHECK (TcgGetNextStartName (&ParseStruct));\r
+ ERROR_CHECK (TcgGetNextUINT32 (&ParseStruct, &Col));\r
+ ERROR_CHECK (TcgGetNextByteSequence (&ParseStruct, &RecvMsid, MsidLength));\r
+ ERROR_CHECK (TcgGetNextEndName (&ParseStruct));\r
+ ERROR_CHECK (TcgGetNextEndList (&ParseStruct));\r
+ ERROR_CHECK (TcgGetNextEndList (&ParseStruct));\r
+ ERROR_CHECK (TcgGetNextEndOfData (&ParseStruct));\r
\r
if (Col != OPAL_ADMIN_SP_PIN_COL) {\r
DEBUG ((DEBUG_INFO, "ERROR: got col %u, expected %u\n", Col, OPAL_ADMIN_SP_PIN_COL));\r
//\r
// copy msid into Buffer\r
//\r
- CopyMem(Msid, RecvMsid, *MsidLength);\r
+ CopyMem (Msid, RecvMsid, *MsidLength);\r
return TcgResultSuccess;\r
}\r
\r
**/\r
TCG_RESULT\r
OpalPyrite2GetActiveDataRemovalMechanism (\r
- IN OPAL_SESSION *AdminSpSession,\r
- OUT UINT8 *ActiveDataRemovalMechanism\r
+ IN OPAL_SESSION *AdminSpSession,\r
+ OUT UINT8 *ActiveDataRemovalMechanism\r
)\r
{\r
- TCG_CREATE_STRUCT CreateStruct;\r
- TCG_PARSE_STRUCT ParseStruct;\r
- UINT32 Size;\r
- UINT8 MethodStatus;\r
- UINT32 Col;\r
- UINT8 RecvActiveDataRemovalMechanism;\r
- UINT8 Buffer[BUFFER_SIZE];\r
-\r
- NULL_CHECK(AdminSpSession);\r
- NULL_CHECK(ActiveDataRemovalMechanism);\r
-\r
- ERROR_CHECK(TcgInitTcgCreateStruct(&CreateStruct, Buffer, BUFFER_SIZE));\r
- ERROR_CHECK(TcgStartComPacket(&CreateStruct, AdminSpSession->OpalBaseComId, AdminSpSession->ComIdExtension));\r
- ERROR_CHECK(TcgStartPacket(&CreateStruct, AdminSpSession->TperSessionId, AdminSpSession->HostSessionId, 0x0, 0x0, 0x0));\r
- ERROR_CHECK(TcgStartSubPacket(&CreateStruct, 0x0));\r
- ERROR_CHECK(TcgStartMethodCall(&CreateStruct, OPAL_UID_ADMIN_SP_DATA_REMOVAL_MECHANISM, TCG_UID_METHOD_GET));\r
- ERROR_CHECK(TcgStartParameters(&CreateStruct));\r
- ERROR_CHECK(TcgAddStartList(&CreateStruct));\r
- ERROR_CHECK(TcgAddStartName(&CreateStruct));\r
- ERROR_CHECK(TcgAddUINT8(&CreateStruct, TCG_CELL_BLOCK_START_COLUMN_NAME));\r
- ERROR_CHECK(TcgAddUINT8(&CreateStruct, OPAL_ADMIN_SP_ACTIVE_DATA_REMOVAL_MECHANISM_COL));\r
- ERROR_CHECK(TcgAddEndName(&CreateStruct));\r
- ERROR_CHECK(TcgAddStartName(&CreateStruct));\r
- ERROR_CHECK(TcgAddUINT8(&CreateStruct, TCG_CELL_BLOCK_END_COLUMN_NAME));\r
- ERROR_CHECK(TcgAddUINT8(&CreateStruct, OPAL_ADMIN_SP_ACTIVE_DATA_REMOVAL_MECHANISM_COL));\r
- ERROR_CHECK(TcgAddEndName(&CreateStruct));\r
- ERROR_CHECK(TcgAddEndList(&CreateStruct));\r
- ERROR_CHECK(TcgEndParameters(&CreateStruct));\r
- ERROR_CHECK(TcgEndMethodCall(&CreateStruct));\r
- ERROR_CHECK(TcgEndSubPacket(&CreateStruct));\r
- ERROR_CHECK(TcgEndPacket(&CreateStruct));\r
- ERROR_CHECK(TcgEndComPacket(&CreateStruct, &Size));\r
+ TCG_CREATE_STRUCT CreateStruct;\r
+ TCG_PARSE_STRUCT ParseStruct;\r
+ UINT32 Size;\r
+ UINT8 MethodStatus;\r
+ UINT32 Col;\r
+ UINT8 RecvActiveDataRemovalMechanism;\r
+ UINT8 Buffer[BUFFER_SIZE];\r
+\r
+ NULL_CHECK (AdminSpSession);\r
+ NULL_CHECK (ActiveDataRemovalMechanism);\r
+\r
+ ERROR_CHECK (TcgInitTcgCreateStruct (&CreateStruct, Buffer, BUFFER_SIZE));\r
+ ERROR_CHECK (TcgStartComPacket (&CreateStruct, AdminSpSession->OpalBaseComId, AdminSpSession->ComIdExtension));\r
+ ERROR_CHECK (TcgStartPacket (&CreateStruct, AdminSpSession->TperSessionId, AdminSpSession->HostSessionId, 0x0, 0x0, 0x0));\r
+ ERROR_CHECK (TcgStartSubPacket (&CreateStruct, 0x0));\r
+ ERROR_CHECK (TcgStartMethodCall (&CreateStruct, OPAL_UID_ADMIN_SP_DATA_REMOVAL_MECHANISM, TCG_UID_METHOD_GET));\r
+ ERROR_CHECK (TcgStartParameters (&CreateStruct));\r
+ ERROR_CHECK (TcgAddStartList (&CreateStruct));\r
+ ERROR_CHECK (TcgAddStartName (&CreateStruct));\r
+ ERROR_CHECK (TcgAddUINT8 (&CreateStruct, TCG_CELL_BLOCK_START_COLUMN_NAME));\r
+ ERROR_CHECK (TcgAddUINT8 (&CreateStruct, OPAL_ADMIN_SP_ACTIVE_DATA_REMOVAL_MECHANISM_COL));\r
+ ERROR_CHECK (TcgAddEndName (&CreateStruct));\r
+ ERROR_CHECK (TcgAddStartName (&CreateStruct));\r
+ ERROR_CHECK (TcgAddUINT8 (&CreateStruct, TCG_CELL_BLOCK_END_COLUMN_NAME));\r
+ ERROR_CHECK (TcgAddUINT8 (&CreateStruct, OPAL_ADMIN_SP_ACTIVE_DATA_REMOVAL_MECHANISM_COL));\r
+ ERROR_CHECK (TcgAddEndName (&CreateStruct));\r
+ ERROR_CHECK (TcgAddEndList (&CreateStruct));\r
+ ERROR_CHECK (TcgEndParameters (&CreateStruct));\r
+ ERROR_CHECK (TcgEndMethodCall (&CreateStruct));\r
+ ERROR_CHECK (TcgEndSubPacket (&CreateStruct));\r
+ ERROR_CHECK (TcgEndPacket (&CreateStruct));\r
+ ERROR_CHECK (TcgEndComPacket (&CreateStruct, &Size));\r
\r
//\r
// Send Get Active Data Removal Mechanism Method Call\r
//\r
- ERROR_CHECK(OpalPerformMethod(AdminSpSession, Size, Buffer, BUFFER_SIZE, &ParseStruct, &MethodStatus, 0));\r
- METHOD_STATUS_ERROR_CHECK(MethodStatus, TcgResultFailure);\r
+ ERROR_CHECK (OpalPerformMethod (AdminSpSession, Size, Buffer, BUFFER_SIZE, &ParseStruct, &MethodStatus, 0));\r
+ METHOD_STATUS_ERROR_CHECK (MethodStatus, TcgResultFailure);\r
\r
- ERROR_CHECK(TcgGetNextStartList(&ParseStruct));\r
- ERROR_CHECK(TcgGetNextStartList(&ParseStruct));\r
- ERROR_CHECK(TcgGetNextStartName(&ParseStruct));\r
- ERROR_CHECK(TcgGetNextUINT32(&ParseStruct, &Col));\r
- ERROR_CHECK(TcgGetNextUINT8(&ParseStruct, &RecvActiveDataRemovalMechanism));\r
- ERROR_CHECK(TcgGetNextEndName(&ParseStruct));\r
- ERROR_CHECK(TcgGetNextEndList(&ParseStruct));\r
- ERROR_CHECK(TcgGetNextEndList(&ParseStruct));\r
- ERROR_CHECK(TcgGetNextEndOfData(&ParseStruct));\r
+ ERROR_CHECK (TcgGetNextStartList (&ParseStruct));\r
+ ERROR_CHECK (TcgGetNextStartList (&ParseStruct));\r
+ ERROR_CHECK (TcgGetNextStartName (&ParseStruct));\r
+ ERROR_CHECK (TcgGetNextUINT32 (&ParseStruct, &Col));\r
+ ERROR_CHECK (TcgGetNextUINT8 (&ParseStruct, &RecvActiveDataRemovalMechanism));\r
+ ERROR_CHECK (TcgGetNextEndName (&ParseStruct));\r
+ ERROR_CHECK (TcgGetNextEndList (&ParseStruct));\r
+ ERROR_CHECK (TcgGetNextEndList (&ParseStruct));\r
+ ERROR_CHECK (TcgGetNextEndOfData (&ParseStruct));\r
\r
if (Col != OPAL_ADMIN_SP_ACTIVE_DATA_REMOVAL_MECHANISM_COL) {\r
DEBUG ((DEBUG_INFO, "ERROR: got col %u, expected %u\n", Col, OPAL_ADMIN_SP_ACTIVE_DATA_REMOVAL_MECHANISM_COL));\r
//\r
// Copy active data removal mechanism into Buffer\r
//\r
- CopyMem(ActiveDataRemovalMechanism, &RecvActiveDataRemovalMechanism, sizeof(RecvActiveDataRemovalMechanism));\r
+ CopyMem (ActiveDataRemovalMechanism, &RecvActiveDataRemovalMechanism, sizeof (RecvActiveDataRemovalMechanism));\r
return TcgResultSuccess;\r
}\r
\r
**/\r
TCG_RESULT\r
EFIAPI\r
-OpalAdminRevert(\r
- OPAL_SESSION *LockingSpSession,\r
- BOOLEAN KeepUserData,\r
- UINT8 *MethodStatus\r
+OpalAdminRevert (\r
+ OPAL_SESSION *LockingSpSession,\r
+ BOOLEAN KeepUserData,\r
+ UINT8 *MethodStatus\r
)\r
{\r
- UINT8 Buf[BUFFER_SIZE];\r
- TCG_CREATE_STRUCT CreateStruct;\r
- UINT32 Size;\r
- TCG_PARSE_STRUCT ParseStruct;\r
- TCG_RESULT Ret;\r
+ UINT8 Buf[BUFFER_SIZE];\r
+ TCG_CREATE_STRUCT CreateStruct;\r
+ UINT32 Size;\r
+ TCG_PARSE_STRUCT ParseStruct;\r
+ TCG_RESULT Ret;\r
\r
- NULL_CHECK(LockingSpSession);\r
- NULL_CHECK(MethodStatus);\r
+ NULL_CHECK (LockingSpSession);\r
+ NULL_CHECK (MethodStatus);\r
\r
//\r
// ReadLocked or WriteLocked must be False (per Opal spec) to guarantee revertSP can keep user Data\r
//\r
// set readlocked and writelocked to false\r
//\r
- Ret = OpalUpdateGlobalLockingRange(\r
- LockingSpSession,\r
- FALSE,\r
- FALSE,\r
- MethodStatus);\r
-\r
- if (Ret != TcgResultSuccess || *MethodStatus != TCG_METHOD_STATUS_CODE_SUCCESS) {\r
+ Ret = OpalUpdateGlobalLockingRange (\r
+ LockingSpSession,\r
+ FALSE,\r
+ FALSE,\r
+ MethodStatus\r
+ );\r
+\r
+ if ((Ret != TcgResultSuccess) || (*MethodStatus != TCG_METHOD_STATUS_CODE_SUCCESS)) {\r
//\r
// bail out\r
//\r
}\r
}\r
\r
- ERROR_CHECK(TcgInitTcgCreateStruct(&CreateStruct, Buf, sizeof(Buf)));\r
- ERROR_CHECK(TcgStartComPacket(&CreateStruct, LockingSpSession->OpalBaseComId, LockingSpSession->ComIdExtension));\r
- ERROR_CHECK(TcgStartPacket(&CreateStruct, LockingSpSession->TperSessionId, LockingSpSession->HostSessionId, 0x0, 0x0, 0x0));\r
- ERROR_CHECK(TcgStartSubPacket(&CreateStruct, 0x0));\r
- ERROR_CHECK(TcgStartMethodCall(&CreateStruct, TCG_UID_THIS_SP, OPAL_LOCKING_SP_REVERTSP_METHOD));\r
- ERROR_CHECK(TcgStartParameters(&CreateStruct));\r
+ ERROR_CHECK (TcgInitTcgCreateStruct (&CreateStruct, Buf, sizeof (Buf)));\r
+ ERROR_CHECK (TcgStartComPacket (&CreateStruct, LockingSpSession->OpalBaseComId, LockingSpSession->ComIdExtension));\r
+ ERROR_CHECK (TcgStartPacket (&CreateStruct, LockingSpSession->TperSessionId, LockingSpSession->HostSessionId, 0x0, 0x0, 0x0));\r
+ ERROR_CHECK (TcgStartSubPacket (&CreateStruct, 0x0));\r
+ ERROR_CHECK (TcgStartMethodCall (&CreateStruct, TCG_UID_THIS_SP, OPAL_LOCKING_SP_REVERTSP_METHOD));\r
+ ERROR_CHECK (TcgStartParameters (&CreateStruct));\r
\r
if (KeepUserData) {\r
//\r
// optional parameter to keep Data after revert\r
//\r
- ERROR_CHECK(TcgAddStartName(&CreateStruct));\r
- ERROR_CHECK(TcgAddUINT32(&CreateStruct, 0x060000)); // weird Value but that's what spec says\r
- ERROR_CHECK(TcgAddBOOLEAN(&CreateStruct, KeepUserData));\r
- ERROR_CHECK(TcgAddEndName(&CreateStruct));\r
+ ERROR_CHECK (TcgAddStartName (&CreateStruct));\r
+ ERROR_CHECK (TcgAddUINT32 (&CreateStruct, 0x060000)); // weird Value but that's what spec says\r
+ ERROR_CHECK (TcgAddBOOLEAN (&CreateStruct, KeepUserData));\r
+ ERROR_CHECK (TcgAddEndName (&CreateStruct));\r
}\r
\r
- ERROR_CHECK(TcgEndParameters(&CreateStruct));\r
- ERROR_CHECK(TcgEndMethodCall(&CreateStruct));\r
- ERROR_CHECK(TcgEndSubPacket(&CreateStruct));\r
- ERROR_CHECK(TcgEndPacket(&CreateStruct));\r
- ERROR_CHECK(TcgEndComPacket(&CreateStruct, &Size));\r
+ ERROR_CHECK (TcgEndParameters (&CreateStruct));\r
+ ERROR_CHECK (TcgEndMethodCall (&CreateStruct));\r
+ ERROR_CHECK (TcgEndSubPacket (&CreateStruct));\r
+ ERROR_CHECK (TcgEndPacket (&CreateStruct));\r
+ ERROR_CHECK (TcgEndComPacket (&CreateStruct, &Size));\r
\r
//\r
// Send RevertSP method call\r
//\r
- ERROR_CHECK(OpalPerformMethod(LockingSpSession, Size, Buf, sizeof(Buf), &ParseStruct, MethodStatus, 0));\r
+ ERROR_CHECK (OpalPerformMethod (LockingSpSession, Size, Buf, sizeof (Buf), &ParseStruct, MethodStatus, 0));\r
\r
//\r
// Session is immediately ended by device after successful revertsp, so no need to end Session\r
//\r
// End Session\r
//\r
- METHOD_STATUS_ERROR_CHECK(*MethodStatus, TcgResultSuccess); // exit with success on method failure - user must inspect MethodStatus\r
+ METHOD_STATUS_ERROR_CHECK (*MethodStatus, TcgResultSuccess); // exit with success on method failure - user must inspect MethodStatus\r
}\r
\r
return TcgResultSuccess;\r
}\r
\r
-\r
/**\r
\r
The function calls the Admin SP RevertSP method on the Locking SP. If KeepUserData is True, then the optional parameter\r
\r
**/\r
TCG_RESULT\r
-OpalPyrite2AdminRevert(\r
- OPAL_SESSION *LockingSpSession,\r
- BOOLEAN KeepUserData,\r
- UINT8 *MethodStatus,\r
- UINT32 EstimateTimeCost\r
+OpalPyrite2AdminRevert (\r
+ OPAL_SESSION *LockingSpSession,\r
+ BOOLEAN KeepUserData,\r
+ UINT8 *MethodStatus,\r
+ UINT32 EstimateTimeCost\r
)\r
{\r
- UINT8 Buf[BUFFER_SIZE];\r
- TCG_CREATE_STRUCT CreateStruct;\r
- UINT32 Size;\r
- TCG_PARSE_STRUCT ParseStruct;\r
- TCG_RESULT Ret;\r
+ UINT8 Buf[BUFFER_SIZE];\r
+ TCG_CREATE_STRUCT CreateStruct;\r
+ UINT32 Size;\r
+ TCG_PARSE_STRUCT ParseStruct;\r
+ TCG_RESULT Ret;\r
\r
- NULL_CHECK(LockingSpSession);\r
- NULL_CHECK(MethodStatus);\r
+ NULL_CHECK (LockingSpSession);\r
+ NULL_CHECK (MethodStatus);\r
\r
//\r
// ReadLocked or WriteLocked must be False (per Opal spec) to guarantee revertSP can keep user Data\r
//\r
// set readlocked and writelocked to false\r
//\r
- Ret = OpalUpdateGlobalLockingRange(\r
- LockingSpSession,\r
- FALSE,\r
- FALSE,\r
- MethodStatus);\r
-\r
- if (Ret != TcgResultSuccess || *MethodStatus != TCG_METHOD_STATUS_CODE_SUCCESS) {\r
+ Ret = OpalUpdateGlobalLockingRange (\r
+ LockingSpSession,\r
+ FALSE,\r
+ FALSE,\r
+ MethodStatus\r
+ );\r
+\r
+ if ((Ret != TcgResultSuccess) || (*MethodStatus != TCG_METHOD_STATUS_CODE_SUCCESS)) {\r
//\r
// bail out\r
//\r
}\r
}\r
\r
- ERROR_CHECK(TcgInitTcgCreateStruct(&CreateStruct, Buf, sizeof(Buf)));\r
- ERROR_CHECK(TcgStartComPacket(&CreateStruct, LockingSpSession->OpalBaseComId, LockingSpSession->ComIdExtension));\r
- ERROR_CHECK(TcgStartPacket(&CreateStruct, LockingSpSession->TperSessionId, LockingSpSession->HostSessionId, 0x0, 0x0, 0x0));\r
- ERROR_CHECK(TcgStartSubPacket(&CreateStruct, 0x0));\r
- ERROR_CHECK(TcgStartMethodCall(&CreateStruct, TCG_UID_THIS_SP, OPAL_LOCKING_SP_REVERTSP_METHOD));\r
- ERROR_CHECK(TcgStartParameters(&CreateStruct));\r
+ ERROR_CHECK (TcgInitTcgCreateStruct (&CreateStruct, Buf, sizeof (Buf)));\r
+ ERROR_CHECK (TcgStartComPacket (&CreateStruct, LockingSpSession->OpalBaseComId, LockingSpSession->ComIdExtension));\r
+ ERROR_CHECK (TcgStartPacket (&CreateStruct, LockingSpSession->TperSessionId, LockingSpSession->HostSessionId, 0x0, 0x0, 0x0));\r
+ ERROR_CHECK (TcgStartSubPacket (&CreateStruct, 0x0));\r
+ ERROR_CHECK (TcgStartMethodCall (&CreateStruct, TCG_UID_THIS_SP, OPAL_LOCKING_SP_REVERTSP_METHOD));\r
+ ERROR_CHECK (TcgStartParameters (&CreateStruct));\r
\r
if (KeepUserData) {\r
//\r
// optional parameter to keep Data after revert\r
//\r
- ERROR_CHECK(TcgAddStartName(&CreateStruct));\r
- ERROR_CHECK(TcgAddUINT32(&CreateStruct, 0x060000)); // weird Value but that's what spec says\r
- ERROR_CHECK(TcgAddBOOLEAN(&CreateStruct, KeepUserData));\r
- ERROR_CHECK(TcgAddEndName(&CreateStruct));\r
+ ERROR_CHECK (TcgAddStartName (&CreateStruct));\r
+ ERROR_CHECK (TcgAddUINT32 (&CreateStruct, 0x060000)); // weird Value but that's what spec says\r
+ ERROR_CHECK (TcgAddBOOLEAN (&CreateStruct, KeepUserData));\r
+ ERROR_CHECK (TcgAddEndName (&CreateStruct));\r
}\r
\r
- ERROR_CHECK(TcgEndParameters(&CreateStruct));\r
- ERROR_CHECK(TcgEndMethodCall(&CreateStruct));\r
- ERROR_CHECK(TcgEndSubPacket(&CreateStruct));\r
- ERROR_CHECK(TcgEndPacket(&CreateStruct));\r
- ERROR_CHECK(TcgEndComPacket(&CreateStruct, &Size));\r
+ ERROR_CHECK (TcgEndParameters (&CreateStruct));\r
+ ERROR_CHECK (TcgEndMethodCall (&CreateStruct));\r
+ ERROR_CHECK (TcgEndSubPacket (&CreateStruct));\r
+ ERROR_CHECK (TcgEndPacket (&CreateStruct));\r
+ ERROR_CHECK (TcgEndComPacket (&CreateStruct, &Size));\r
\r
//\r
// Send RevertSP method call\r
//\r
- ERROR_CHECK(OpalPerformMethod(LockingSpSession, Size, Buf, sizeof(Buf), &ParseStruct, MethodStatus, EstimateTimeCost));\r
+ ERROR_CHECK (OpalPerformMethod (LockingSpSession, Size, Buf, sizeof (Buf), &ParseStruct, MethodStatus, EstimateTimeCost));\r
\r
//\r
// Session is immediately ended by device after successful revertsp, so no need to end Session\r
//\r
// End Session\r
//\r
- METHOD_STATUS_ERROR_CHECK(*MethodStatus, TcgResultSuccess); // exit with success on method failure - user must inspect MethodStatus\r
+ METHOD_STATUS_ERROR_CHECK (*MethodStatus, TcgResultSuccess); // exit with success on method failure - user must inspect MethodStatus\r
}\r
\r
return TcgResultSuccess;\r
**/\r
TCG_RESULT\r
EFIAPI\r
-OpalActivateLockingSp(\r
- OPAL_SESSION *AdminSpSession,\r
- UINT8 *MethodStatus\r
+OpalActivateLockingSp (\r
+ OPAL_SESSION *AdminSpSession,\r
+ UINT8 *MethodStatus\r
)\r
{\r
- UINT8 Buf[BUFFER_SIZE];\r
- TCG_CREATE_STRUCT CreateStruct;\r
- UINT32 Size;\r
- TCG_PARSE_STRUCT ParseStruct;\r
+ UINT8 Buf[BUFFER_SIZE];\r
+ TCG_CREATE_STRUCT CreateStruct;\r
+ UINT32 Size;\r
+ TCG_PARSE_STRUCT ParseStruct;\r
\r
- NULL_CHECK(AdminSpSession);\r
- NULL_CHECK(MethodStatus);\r
+ NULL_CHECK (AdminSpSession);\r
+ NULL_CHECK (MethodStatus);\r
\r
//\r
// Call Activate method on Locking SP\r
//\r
- ERROR_CHECK(TcgInitTcgCreateStruct(&CreateStruct, Buf, sizeof(Buf)));\r
- ERROR_CHECK(TcgStartComPacket(&CreateStruct, AdminSpSession->OpalBaseComId, AdminSpSession->ComIdExtension));\r
- ERROR_CHECK(TcgStartPacket(&CreateStruct, AdminSpSession->TperSessionId, AdminSpSession->HostSessionId, 0x0, 0x0, 0x0));\r
- ERROR_CHECK(TcgStartSubPacket(&CreateStruct, 0x0));\r
- ERROR_CHECK(TcgStartMethodCall(&CreateStruct, OPAL_UID_LOCKING_SP, OPAL_ADMIN_SP_ACTIVATE_METHOD));\r
- ERROR_CHECK(TcgStartParameters(&CreateStruct));\r
- ERROR_CHECK(TcgEndParameters(&CreateStruct));\r
- ERROR_CHECK(TcgEndMethodCall(&CreateStruct));\r
- ERROR_CHECK(TcgEndSubPacket(&CreateStruct));\r
- ERROR_CHECK(TcgEndPacket(&CreateStruct));\r
- ERROR_CHECK(TcgEndComPacket(&CreateStruct, &Size));\r
+ ERROR_CHECK (TcgInitTcgCreateStruct (&CreateStruct, Buf, sizeof (Buf)));\r
+ ERROR_CHECK (TcgStartComPacket (&CreateStruct, AdminSpSession->OpalBaseComId, AdminSpSession->ComIdExtension));\r
+ ERROR_CHECK (TcgStartPacket (&CreateStruct, AdminSpSession->TperSessionId, AdminSpSession->HostSessionId, 0x0, 0x0, 0x0));\r
+ ERROR_CHECK (TcgStartSubPacket (&CreateStruct, 0x0));\r
+ ERROR_CHECK (TcgStartMethodCall (&CreateStruct, OPAL_UID_LOCKING_SP, OPAL_ADMIN_SP_ACTIVATE_METHOD));\r
+ ERROR_CHECK (TcgStartParameters (&CreateStruct));\r
+ ERROR_CHECK (TcgEndParameters (&CreateStruct));\r
+ ERROR_CHECK (TcgEndMethodCall (&CreateStruct));\r
+ ERROR_CHECK (TcgEndSubPacket (&CreateStruct));\r
+ ERROR_CHECK (TcgEndPacket (&CreateStruct));\r
+ ERROR_CHECK (TcgEndComPacket (&CreateStruct, &Size));\r
\r
//\r
// Send Activate method call\r
//\r
- ERROR_CHECK(OpalPerformMethod(AdminSpSession, Size, Buf, sizeof(Buf), &ParseStruct, MethodStatus, 0));\r
- METHOD_STATUS_ERROR_CHECK(*MethodStatus, TcgResultSuccess); // exit with success on method failure - user must inspect MethodStatus\r
+ ERROR_CHECK (OpalPerformMethod (AdminSpSession, Size, Buf, sizeof (Buf), &ParseStruct, MethodStatus, 0));\r
+ METHOD_STATUS_ERROR_CHECK (*MethodStatus, TcgResultSuccess); // exit with success on method failure - user must inspect MethodStatus\r
\r
return TcgResultSuccess;\r
}\r
**/\r
TCG_RESULT\r
EFIAPI\r
-OpalSetPassword(\r
- OPAL_SESSION *Session,\r
- TCG_UID CpinRowUid,\r
- const VOID *NewPin,\r
- UINT32 NewPinLength,\r
- UINT8 *MethodStatus\r
+OpalSetPassword (\r
+ OPAL_SESSION *Session,\r
+ TCG_UID CpinRowUid,\r
+ const VOID *NewPin,\r
+ UINT32 NewPinLength,\r
+ UINT8 *MethodStatus\r
)\r
{\r
- UINT8 Buf[BUFFER_SIZE];\r
- TCG_CREATE_STRUCT CreateStruct;\r
- TCG_PARSE_STRUCT ParseStruct;\r
- UINT32 Size;\r
-\r
- NULL_CHECK(Session);\r
- NULL_CHECK(NewPin);\r
- NULL_CHECK(MethodStatus);\r
-\r
- ERROR_CHECK(TcgInitTcgCreateStruct(&CreateStruct, Buf, sizeof(Buf)));\r
- ERROR_CHECK(TcgCreateSetCPin(\r
- &CreateStruct,\r
- &Size,\r
- Session->OpalBaseComId,\r
- Session->ComIdExtension,\r
- Session->TperSessionId,\r
- Session->HostSessionId,\r
- CpinRowUid,\r
- NewPin,\r
- NewPinLength\r
- ));\r
-\r
- ERROR_CHECK(OpalPerformMethod(Session, Size, Buf, sizeof(Buf), &ParseStruct, MethodStatus, 0));\r
+ UINT8 Buf[BUFFER_SIZE];\r
+ TCG_CREATE_STRUCT CreateStruct;\r
+ TCG_PARSE_STRUCT ParseStruct;\r
+ UINT32 Size;\r
+\r
+ NULL_CHECK (Session);\r
+ NULL_CHECK (NewPin);\r
+ NULL_CHECK (MethodStatus);\r
+\r
+ ERROR_CHECK (TcgInitTcgCreateStruct (&CreateStruct, Buf, sizeof (Buf)));\r
+ ERROR_CHECK (\r
+ TcgCreateSetCPin (\r
+ &CreateStruct,\r
+ &Size,\r
+ Session->OpalBaseComId,\r
+ Session->ComIdExtension,\r
+ Session->TperSessionId,\r
+ Session->HostSessionId,\r
+ CpinRowUid,\r
+ NewPin,\r
+ NewPinLength\r
+ )\r
+ );\r
+\r
+ ERROR_CHECK (OpalPerformMethod (Session, Size, Buf, sizeof (Buf), &ParseStruct, MethodStatus, 0));\r
// exit with success on method failure - user must inspect MethodStatus\r
- METHOD_STATUS_ERROR_CHECK(*MethodStatus, TcgResultSuccess);\r
+ METHOD_STATUS_ERROR_CHECK (*MethodStatus, TcgResultSuccess);\r
\r
return TcgResultSuccess;\r
}\r
**/\r
TCG_RESULT\r
EFIAPI\r
-OpalSetLockingSpAuthorityEnabledAndPin(\r
- OPAL_SESSION *LockingSpSession,\r
- TCG_UID CpinRowUid,\r
- TCG_UID AuthorityUid,\r
- const VOID *NewPin,\r
- UINT32 NewPinLength,\r
- UINT8 *MethodStatus\r
+OpalSetLockingSpAuthorityEnabledAndPin (\r
+ OPAL_SESSION *LockingSpSession,\r
+ TCG_UID CpinRowUid,\r
+ TCG_UID AuthorityUid,\r
+ const VOID *NewPin,\r
+ UINT32 NewPinLength,\r
+ UINT8 *MethodStatus\r
)\r
{\r
- UINT8 Buf[BUFFER_SIZE];\r
- TCG_CREATE_STRUCT CreateStruct;\r
- TCG_PARSE_STRUCT ParseStruct;\r
- UINT32 Size;\r
- TCG_UID ActiveKey;\r
- TCG_RESULT Ret;\r
-\r
- NULL_CHECK(LockingSpSession);\r
- NULL_CHECK(NewPin);\r
- NULL_CHECK(MethodStatus);\r
-\r
- ERROR_CHECK(TcgInitTcgCreateStruct(&CreateStruct, Buf, sizeof(Buf)));\r
- ERROR_CHECK(TcgSetAuthorityEnabled(\r
- &CreateStruct,\r
- &Size,\r
- LockingSpSession->OpalBaseComId,\r
- LockingSpSession->ComIdExtension,\r
- LockingSpSession->TperSessionId,\r
- LockingSpSession->HostSessionId,\r
- AuthorityUid,\r
- TRUE));\r
-\r
- ERROR_CHECK(OpalPerformMethod(LockingSpSession, Size, Buf, sizeof(Buf), &ParseStruct, MethodStatus, 0));\r
+ UINT8 Buf[BUFFER_SIZE];\r
+ TCG_CREATE_STRUCT CreateStruct;\r
+ TCG_PARSE_STRUCT ParseStruct;\r
+ UINT32 Size;\r
+ TCG_UID ActiveKey;\r
+ TCG_RESULT Ret;\r
+\r
+ NULL_CHECK (LockingSpSession);\r
+ NULL_CHECK (NewPin);\r
+ NULL_CHECK (MethodStatus);\r
+\r
+ ERROR_CHECK (TcgInitTcgCreateStruct (&CreateStruct, Buf, sizeof (Buf)));\r
+ ERROR_CHECK (\r
+ TcgSetAuthorityEnabled (\r
+ &CreateStruct,\r
+ &Size,\r
+ LockingSpSession->OpalBaseComId,\r
+ LockingSpSession->ComIdExtension,\r
+ LockingSpSession->TperSessionId,\r
+ LockingSpSession->HostSessionId,\r
+ AuthorityUid,\r
+ TRUE\r
+ )\r
+ );\r
+\r
+ ERROR_CHECK (OpalPerformMethod (LockingSpSession, Size, Buf, sizeof (Buf), &ParseStruct, MethodStatus, 0));\r
\r
if (*MethodStatus != TCG_METHOD_STATUS_CODE_SUCCESS) {\r
DEBUG ((DEBUG_INFO, "Send Set Authority error\n"));\r
return TcgResultFailure;\r
}\r
\r
- ERROR_CHECK(TcgInitTcgCreateStruct(&CreateStruct, Buf, sizeof(Buf)));\r
+ ERROR_CHECK (TcgInitTcgCreateStruct (&CreateStruct, Buf, sizeof (Buf)));\r
\r
- ERROR_CHECK(TcgCreateSetCPin(\r
- &CreateStruct,\r
- &Size,\r
- LockingSpSession->OpalBaseComId,\r
- LockingSpSession->ComIdExtension,\r
- LockingSpSession->TperSessionId,\r
- LockingSpSession->HostSessionId,\r
- CpinRowUid,\r
- NewPin,\r
- NewPinLength));\r
+ ERROR_CHECK (\r
+ TcgCreateSetCPin (\r
+ &CreateStruct,\r
+ &Size,\r
+ LockingSpSession->OpalBaseComId,\r
+ LockingSpSession->ComIdExtension,\r
+ LockingSpSession->TperSessionId,\r
+ LockingSpSession->HostSessionId,\r
+ CpinRowUid,\r
+ NewPin,\r
+ NewPinLength\r
+ )\r
+ );\r
\r
- ERROR_CHECK(OpalPerformMethod(LockingSpSession, Size, Buf, sizeof(Buf), &ParseStruct, MethodStatus, 0));\r
+ ERROR_CHECK (OpalPerformMethod (LockingSpSession, Size, Buf, sizeof (Buf), &ParseStruct, MethodStatus, 0));\r
\r
//\r
// allow user1 to set global range to unlocked/locked by modifying ACE_Locking_GlobalRange_SetRdLocked/SetWrLocked\r
//\r
- ERROR_CHECK(TcgInitTcgCreateStruct(&CreateStruct, Buf, sizeof(Buf)));\r
- ERROR_CHECK(TcgCreateSetAce(\r
- &CreateStruct,\r
- &Size,\r
- LockingSpSession->OpalBaseComId,\r
- LockingSpSession->ComIdExtension,\r
- LockingSpSession->TperSessionId,\r
- LockingSpSession->HostSessionId,\r
- OPAL_LOCKING_SP_ACE_LOCKING_GLOBALRANGE_SET_RDLOCKED,\r
- OPAL_LOCKING_SP_USER1_AUTHORITY,\r
- TCG_ACE_EXPRESSION_OR,\r
- OPAL_LOCKING_SP_ADMINS_AUTHORITY\r
- ));\r
-\r
- ERROR_CHECK(OpalPerformMethod(LockingSpSession, Size, Buf, sizeof(Buf), &ParseStruct, MethodStatus, 0));\r
+ ERROR_CHECK (TcgInitTcgCreateStruct (&CreateStruct, Buf, sizeof (Buf)));\r
+ ERROR_CHECK (\r
+ TcgCreateSetAce (\r
+ &CreateStruct,\r
+ &Size,\r
+ LockingSpSession->OpalBaseComId,\r
+ LockingSpSession->ComIdExtension,\r
+ LockingSpSession->TperSessionId,\r
+ LockingSpSession->HostSessionId,\r
+ OPAL_LOCKING_SP_ACE_LOCKING_GLOBALRANGE_SET_RDLOCKED,\r
+ OPAL_LOCKING_SP_USER1_AUTHORITY,\r
+ TCG_ACE_EXPRESSION_OR,\r
+ OPAL_LOCKING_SP_ADMINS_AUTHORITY\r
+ )\r
+ );\r
+\r
+ ERROR_CHECK (OpalPerformMethod (LockingSpSession, Size, Buf, sizeof (Buf), &ParseStruct, MethodStatus, 0));\r
\r
if (*MethodStatus != TCG_METHOD_STATUS_CODE_SUCCESS) {\r
DEBUG ((DEBUG_INFO, "Update ACE for RDLOCKED failed\n"));\r
return TcgResultFailure;\r
}\r
\r
- ERROR_CHECK(TcgInitTcgCreateStruct(&CreateStruct, Buf, sizeof(Buf)));\r
- ERROR_CHECK(TcgCreateSetAce(\r
- &CreateStruct,\r
- &Size,\r
- LockingSpSession->OpalBaseComId,\r
- LockingSpSession->ComIdExtension,\r
- LockingSpSession->TperSessionId,\r
- LockingSpSession->HostSessionId,\r
- OPAL_LOCKING_SP_ACE_LOCKING_GLOBALRANGE_SET_WRLOCKED,\r
- OPAL_LOCKING_SP_USER1_AUTHORITY,\r
- TCG_ACE_EXPRESSION_OR,\r
- OPAL_LOCKING_SP_ADMINS_AUTHORITY\r
- ));\r
-\r
- ERROR_CHECK(OpalPerformMethod(LockingSpSession, Size, Buf, sizeof(Buf), &ParseStruct, MethodStatus, 0));\r
+ ERROR_CHECK (TcgInitTcgCreateStruct (&CreateStruct, Buf, sizeof (Buf)));\r
+ ERROR_CHECK (\r
+ TcgCreateSetAce (\r
+ &CreateStruct,\r
+ &Size,\r
+ LockingSpSession->OpalBaseComId,\r
+ LockingSpSession->ComIdExtension,\r
+ LockingSpSession->TperSessionId,\r
+ LockingSpSession->HostSessionId,\r
+ OPAL_LOCKING_SP_ACE_LOCKING_GLOBALRANGE_SET_WRLOCKED,\r
+ OPAL_LOCKING_SP_USER1_AUTHORITY,\r
+ TCG_ACE_EXPRESSION_OR,\r
+ OPAL_LOCKING_SP_ADMINS_AUTHORITY\r
+ )\r
+ );\r
+\r
+ ERROR_CHECK (OpalPerformMethod (LockingSpSession, Size, Buf, sizeof (Buf), &ParseStruct, MethodStatus, 0));\r
\r
if (*MethodStatus != TCG_METHOD_STATUS_CODE_SUCCESS) {\r
DEBUG ((DEBUG_INFO, "Update ACE for WRLOCKED failed\n"));\r
return TcgResultFailure;\r
}\r
\r
- ERROR_CHECK(TcgInitTcgCreateStruct(&CreateStruct, Buf, sizeof(Buf)));\r
- ERROR_CHECK(OpalCreateRetrieveGlobalLockingRangeActiveKey(LockingSpSession, &CreateStruct, &Size));\r
- ERROR_CHECK(OpalPerformMethod(LockingSpSession, Size, Buf, sizeof(Buf), &ParseStruct, MethodStatus, 0));\r
+ ERROR_CHECK (TcgInitTcgCreateStruct (&CreateStruct, Buf, sizeof (Buf)));\r
+ ERROR_CHECK (OpalCreateRetrieveGlobalLockingRangeActiveKey (LockingSpSession, &CreateStruct, &Size));\r
+ ERROR_CHECK (OpalPerformMethod (LockingSpSession, Size, Buf, sizeof (Buf), &ParseStruct, MethodStatus, 0));\r
\r
//\r
// For Pyrite type SSC, it not supports Active Key.\r
// So here add check logic before enable it.\r
//\r
- Ret = OpalParseRetrieveGlobalLockingRangeActiveKey(&ParseStruct, &ActiveKey);\r
+ Ret = OpalParseRetrieveGlobalLockingRangeActiveKey (&ParseStruct, &ActiveKey);\r
if (Ret == TcgResultSuccess) {\r
- ERROR_CHECK(TcgInitTcgCreateStruct(&CreateStruct, Buf, sizeof(Buf)));\r
- ERROR_CHECK(TcgCreateSetAce(\r
- &CreateStruct,\r
- &Size,\r
- LockingSpSession->OpalBaseComId,\r
- LockingSpSession->ComIdExtension,\r
- LockingSpSession->TperSessionId,\r
- LockingSpSession->HostSessionId,\r
- (ActiveKey == OPAL_LOCKING_SP_K_AES_256_GLOBALRANGE_KEY) ? OPAL_LOCKING_SP_ACE_K_AES_256_GLOBALRANGE_GENKEY : OPAL_LOCKING_SP_ACE_K_AES_128_GLOBALRANGE_GENKEY,\r
- OPAL_LOCKING_SP_USER1_AUTHORITY,\r
- TCG_ACE_EXPRESSION_OR,\r
- OPAL_LOCKING_SP_ADMINS_AUTHORITY\r
- ));\r
-\r
- ERROR_CHECK(OpalPerformMethod(LockingSpSession, Size, Buf, sizeof(Buf), &ParseStruct, MethodStatus, 0));\r
+ ERROR_CHECK (TcgInitTcgCreateStruct (&CreateStruct, Buf, sizeof (Buf)));\r
+ ERROR_CHECK (\r
+ TcgCreateSetAce (\r
+ &CreateStruct,\r
+ &Size,\r
+ LockingSpSession->OpalBaseComId,\r
+ LockingSpSession->ComIdExtension,\r
+ LockingSpSession->TperSessionId,\r
+ LockingSpSession->HostSessionId,\r
+ (ActiveKey == OPAL_LOCKING_SP_K_AES_256_GLOBALRANGE_KEY) ? OPAL_LOCKING_SP_ACE_K_AES_256_GLOBALRANGE_GENKEY : OPAL_LOCKING_SP_ACE_K_AES_128_GLOBALRANGE_GENKEY,\r
+ OPAL_LOCKING_SP_USER1_AUTHORITY,\r
+ TCG_ACE_EXPRESSION_OR,\r
+ OPAL_LOCKING_SP_ADMINS_AUTHORITY\r
+ )\r
+ );\r
+\r
+ ERROR_CHECK (OpalPerformMethod (LockingSpSession, Size, Buf, sizeof (Buf), &ParseStruct, MethodStatus, 0));\r
\r
if (*MethodStatus != TCG_METHOD_STATUS_CODE_SUCCESS) {\r
DEBUG ((DEBUG_INFO, "Update ACE for GLOBALRANGE_GENKEY failed\n"));\r
}\r
}\r
\r
- ERROR_CHECK(TcgInitTcgCreateStruct(&CreateStruct, Buf, sizeof(Buf)));\r
- ERROR_CHECK(TcgCreateSetAce(\r
- &CreateStruct,\r
- &Size,\r
- LockingSpSession->OpalBaseComId,\r
- LockingSpSession->ComIdExtension,\r
- LockingSpSession->TperSessionId,\r
- LockingSpSession->HostSessionId,\r
- OPAL_LOCKING_SP_ACE_LOCKING_GLOBALRANGE_GET_ALL,\r
- OPAL_LOCKING_SP_USER1_AUTHORITY,\r
- TCG_ACE_EXPRESSION_OR,\r
- OPAL_LOCKING_SP_ADMINS_AUTHORITY\r
- ));\r
-\r
- ERROR_CHECK(OpalPerformMethod(LockingSpSession, Size, Buf, sizeof(Buf), &ParseStruct, MethodStatus, 0));\r
+ ERROR_CHECK (TcgInitTcgCreateStruct (&CreateStruct, Buf, sizeof (Buf)));\r
+ ERROR_CHECK (\r
+ TcgCreateSetAce (\r
+ &CreateStruct,\r
+ &Size,\r
+ LockingSpSession->OpalBaseComId,\r
+ LockingSpSession->ComIdExtension,\r
+ LockingSpSession->TperSessionId,\r
+ LockingSpSession->HostSessionId,\r
+ OPAL_LOCKING_SP_ACE_LOCKING_GLOBALRANGE_GET_ALL,\r
+ OPAL_LOCKING_SP_USER1_AUTHORITY,\r
+ TCG_ACE_EXPRESSION_OR,\r
+ OPAL_LOCKING_SP_ADMINS_AUTHORITY\r
+ )\r
+ );\r
+\r
+ ERROR_CHECK (OpalPerformMethod (LockingSpSession, Size, Buf, sizeof (Buf), &ParseStruct, MethodStatus, 0));\r
\r
if (*MethodStatus != TCG_METHOD_STATUS_CODE_SUCCESS) {\r
DEBUG ((DEBUG_INFO, "Update ACE for OPAL_LOCKING_SP_ACE_LOCKING_GLOBALRANGE_GET_ALL failed\n"));\r
**/\r
TCG_RESULT\r
EFIAPI\r
-OpalDisableUser(\r
- OPAL_SESSION *LockingSpSession,\r
- UINT8 *MethodStatus\r
+OpalDisableUser (\r
+ OPAL_SESSION *LockingSpSession,\r
+ UINT8 *MethodStatus\r
)\r
{\r
- UINT8 Buf[BUFFER_SIZE];\r
- TCG_CREATE_STRUCT CreateStruct;\r
- TCG_PARSE_STRUCT ParseStruct;\r
- UINT32 Size;\r
-\r
- NULL_CHECK(LockingSpSession);\r
- NULL_CHECK(MethodStatus);\r
-\r
- ERROR_CHECK(TcgInitTcgCreateStruct(&CreateStruct, Buf, sizeof(Buf)));\r
- ERROR_CHECK(TcgSetAuthorityEnabled(\r
- &CreateStruct,\r
- &Size,\r
- LockingSpSession->OpalBaseComId,\r
- LockingSpSession->ComIdExtension,\r
- LockingSpSession->TperSessionId,\r
- LockingSpSession->HostSessionId,\r
- OPAL_LOCKING_SP_USER1_AUTHORITY,\r
- FALSE));\r
-\r
- ERROR_CHECK(OpalPerformMethod(LockingSpSession, Size, Buf, sizeof(Buf), &ParseStruct, MethodStatus, 0));\r
+ UINT8 Buf[BUFFER_SIZE];\r
+ TCG_CREATE_STRUCT CreateStruct;\r
+ TCG_PARSE_STRUCT ParseStruct;\r
+ UINT32 Size;\r
+\r
+ NULL_CHECK (LockingSpSession);\r
+ NULL_CHECK (MethodStatus);\r
+\r
+ ERROR_CHECK (TcgInitTcgCreateStruct (&CreateStruct, Buf, sizeof (Buf)));\r
+ ERROR_CHECK (\r
+ TcgSetAuthorityEnabled (\r
+ &CreateStruct,\r
+ &Size,\r
+ LockingSpSession->OpalBaseComId,\r
+ LockingSpSession->ComIdExtension,\r
+ LockingSpSession->TperSessionId,\r
+ LockingSpSession->HostSessionId,\r
+ OPAL_LOCKING_SP_USER1_AUTHORITY,\r
+ FALSE\r
+ )\r
+ );\r
+\r
+ ERROR_CHECK (OpalPerformMethod (LockingSpSession, Size, Buf, sizeof (Buf), &ParseStruct, MethodStatus, 0));\r
\r
return TcgResultSuccess;\r
}\r
**/\r
TCG_RESULT\r
EFIAPI\r
-OpalGlobalLockingRangeGenKey(\r
- OPAL_SESSION *LockingSpSession,\r
- UINT8 *MethodStatus\r
+OpalGlobalLockingRangeGenKey (\r
+ OPAL_SESSION *LockingSpSession,\r
+ UINT8 *MethodStatus\r
)\r
{\r
- UINT8 Buf[BUFFER_SIZE];\r
- TCG_CREATE_STRUCT CreateStruct;\r
- TCG_PARSE_STRUCT ParseStruct;\r
- UINT32 Size;\r
- TCG_UID ActiveKey;\r
+ UINT8 Buf[BUFFER_SIZE];\r
+ TCG_CREATE_STRUCT CreateStruct;\r
+ TCG_PARSE_STRUCT ParseStruct;\r
+ UINT32 Size;\r
+ TCG_UID ActiveKey;\r
\r
- NULL_CHECK(LockingSpSession);\r
- NULL_CHECK(MethodStatus);\r
+ NULL_CHECK (LockingSpSession);\r
+ NULL_CHECK (MethodStatus);\r
\r
- ERROR_CHECK(TcgInitTcgCreateStruct(&CreateStruct, Buf, sizeof(Buf)));\r
+ ERROR_CHECK (TcgInitTcgCreateStruct (&CreateStruct, Buf, sizeof (Buf)));\r
//\r
// retrieve the activekey in order to know which globalrange key to generate\r
//\r
- ERROR_CHECK(OpalCreateRetrieveGlobalLockingRangeActiveKey(LockingSpSession, &CreateStruct, &Size));\r
- ERROR_CHECK(OpalPerformMethod(LockingSpSession, Size, Buf, sizeof(Buf), &ParseStruct, MethodStatus, 0));\r
+ ERROR_CHECK (OpalCreateRetrieveGlobalLockingRangeActiveKey (LockingSpSession, &CreateStruct, &Size));\r
+ ERROR_CHECK (OpalPerformMethod (LockingSpSession, Size, Buf, sizeof (Buf), &ParseStruct, MethodStatus, 0));\r
\r
- METHOD_STATUS_ERROR_CHECK(*MethodStatus, TcgResultSuccess);\r
+ METHOD_STATUS_ERROR_CHECK (*MethodStatus, TcgResultSuccess);\r
\r
- ERROR_CHECK(OpalParseRetrieveGlobalLockingRangeActiveKey(&ParseStruct, &ActiveKey));\r
+ ERROR_CHECK (OpalParseRetrieveGlobalLockingRangeActiveKey (&ParseStruct, &ActiveKey));\r
\r
//\r
// call genkey on ActiveKey UID\r
//\r
- ERROR_CHECK(TcgInitTcgCreateStruct(&CreateStruct, Buf, sizeof(Buf)));\r
- ERROR_CHECK(TcgStartComPacket(&CreateStruct, LockingSpSession->OpalBaseComId, LockingSpSession->ComIdExtension));\r
- ERROR_CHECK(TcgStartPacket(&CreateStruct, LockingSpSession->TperSessionId, LockingSpSession->HostSessionId, 0x0, 0x0, 0x0));\r
- ERROR_CHECK(TcgStartSubPacket(&CreateStruct, 0x0));\r
- ERROR_CHECK(TcgStartMethodCall(&CreateStruct, ActiveKey, TCG_UID_METHOD_GEN_KEY));\r
- ERROR_CHECK(TcgStartParameters(&CreateStruct));\r
- ERROR_CHECK(TcgEndParameters(&CreateStruct));\r
- ERROR_CHECK(TcgEndMethodCall(&CreateStruct));\r
- ERROR_CHECK(TcgEndSubPacket(&CreateStruct));\r
- ERROR_CHECK(TcgEndPacket(&CreateStruct));\r
- ERROR_CHECK(TcgEndComPacket(&CreateStruct, &Size));\r
+ ERROR_CHECK (TcgInitTcgCreateStruct (&CreateStruct, Buf, sizeof (Buf)));\r
+ ERROR_CHECK (TcgStartComPacket (&CreateStruct, LockingSpSession->OpalBaseComId, LockingSpSession->ComIdExtension));\r
+ ERROR_CHECK (TcgStartPacket (&CreateStruct, LockingSpSession->TperSessionId, LockingSpSession->HostSessionId, 0x0, 0x0, 0x0));\r
+ ERROR_CHECK (TcgStartSubPacket (&CreateStruct, 0x0));\r
+ ERROR_CHECK (TcgStartMethodCall (&CreateStruct, ActiveKey, TCG_UID_METHOD_GEN_KEY));\r
+ ERROR_CHECK (TcgStartParameters (&CreateStruct));\r
+ ERROR_CHECK (TcgEndParameters (&CreateStruct));\r
+ ERROR_CHECK (TcgEndMethodCall (&CreateStruct));\r
+ ERROR_CHECK (TcgEndSubPacket (&CreateStruct));\r
+ ERROR_CHECK (TcgEndPacket (&CreateStruct));\r
+ ERROR_CHECK (TcgEndComPacket (&CreateStruct, &Size));\r
\r
- ERROR_CHECK(OpalPerformMethod(LockingSpSession, Size, Buf, sizeof(Buf), &ParseStruct, MethodStatus, 0));\r
+ ERROR_CHECK (OpalPerformMethod (LockingSpSession, Size, Buf, sizeof (Buf), &ParseStruct, MethodStatus, 0));\r
\r
return TcgResultSuccess;\r
}\r
**/\r
TCG_RESULT\r
EFIAPI\r
-OpalUpdateGlobalLockingRange(\r
- OPAL_SESSION *LockingSpSession,\r
- BOOLEAN ReadLocked,\r
- BOOLEAN WriteLocked,\r
- UINT8 *MethodStatus\r
+OpalUpdateGlobalLockingRange (\r
+ OPAL_SESSION *LockingSpSession,\r
+ BOOLEAN ReadLocked,\r
+ BOOLEAN WriteLocked,\r
+ UINT8 *MethodStatus\r
)\r
{\r
- UINT8 Buf[BUFFER_SIZE];\r
- TCG_CREATE_STRUCT CreateStruct;\r
- TCG_PARSE_STRUCT ParseStruct;\r
- UINT32 Size;\r
+ UINT8 Buf[BUFFER_SIZE];\r
+ TCG_CREATE_STRUCT CreateStruct;\r
+ TCG_PARSE_STRUCT ParseStruct;\r
+ UINT32 Size;\r
\r
- NULL_CHECK(LockingSpSession);\r
- NULL_CHECK(MethodStatus);\r
+ NULL_CHECK (LockingSpSession);\r
+ NULL_CHECK (MethodStatus);\r
\r
- ERROR_CHECK(TcgInitTcgCreateStruct(&CreateStruct, Buf, sizeof(Buf)));\r
+ ERROR_CHECK (TcgInitTcgCreateStruct (&CreateStruct, Buf, sizeof (Buf)));\r
\r
//\r
// set global locking range values\r
//\r
- ERROR_CHECK(TcgStartComPacket(&CreateStruct, LockingSpSession->OpalBaseComId, LockingSpSession->ComIdExtension));\r
- ERROR_CHECK(TcgStartPacket(&CreateStruct, LockingSpSession->TperSessionId, LockingSpSession->HostSessionId, 0x0, 0x0, 0x0));\r
- ERROR_CHECK(TcgStartSubPacket(&CreateStruct, 0x0));\r
- ERROR_CHECK(TcgStartMethodCall(&CreateStruct, OPAL_LOCKING_SP_LOCKING_GLOBALRANGE, TCG_UID_METHOD_SET));\r
- ERROR_CHECK(TcgStartParameters(&CreateStruct));\r
- ERROR_CHECK(TcgAddStartName(&CreateStruct));\r
- ERROR_CHECK(TcgAddUINT8(&CreateStruct, 0x01)); // "Values"\r
- ERROR_CHECK(TcgAddStartList(&CreateStruct));\r
-\r
- ERROR_CHECK(TcgAddStartName(&CreateStruct));\r
- ERROR_CHECK(TcgAddUINT8(&CreateStruct, 0x07)); // "ReadLocked"\r
- ERROR_CHECK(TcgAddBOOLEAN(&CreateStruct, ReadLocked));\r
- ERROR_CHECK(TcgAddEndName(&CreateStruct));\r
-\r
- ERROR_CHECK(TcgAddStartName(&CreateStruct));\r
- ERROR_CHECK(TcgAddUINT8(&CreateStruct, 0x08)); // "WriteLocked"\r
- ERROR_CHECK(TcgAddBOOLEAN(&CreateStruct, WriteLocked));\r
- ERROR_CHECK(TcgAddEndName(&CreateStruct));\r
-\r
- ERROR_CHECK(TcgAddEndList(&CreateStruct));\r
- ERROR_CHECK(TcgAddEndName(&CreateStruct));\r
- ERROR_CHECK(TcgEndParameters(&CreateStruct));\r
- ERROR_CHECK(TcgEndMethodCall(&CreateStruct));\r
- ERROR_CHECK(TcgEndSubPacket(&CreateStruct));\r
- ERROR_CHECK(TcgEndPacket(&CreateStruct));\r
- ERROR_CHECK(TcgEndComPacket(&CreateStruct, &Size));\r
-\r
- ERROR_CHECK(OpalPerformMethod(LockingSpSession, Size, Buf, sizeof(Buf), &ParseStruct, MethodStatus, 0));\r
- METHOD_STATUS_ERROR_CHECK(*MethodStatus, TcgResultSuccess);\r
+ ERROR_CHECK (TcgStartComPacket (&CreateStruct, LockingSpSession->OpalBaseComId, LockingSpSession->ComIdExtension));\r
+ ERROR_CHECK (TcgStartPacket (&CreateStruct, LockingSpSession->TperSessionId, LockingSpSession->HostSessionId, 0x0, 0x0, 0x0));\r
+ ERROR_CHECK (TcgStartSubPacket (&CreateStruct, 0x0));\r
+ ERROR_CHECK (TcgStartMethodCall (&CreateStruct, OPAL_LOCKING_SP_LOCKING_GLOBALRANGE, TCG_UID_METHOD_SET));\r
+ ERROR_CHECK (TcgStartParameters (&CreateStruct));\r
+ ERROR_CHECK (TcgAddStartName (&CreateStruct));\r
+ ERROR_CHECK (TcgAddUINT8 (&CreateStruct, 0x01)); // "Values"\r
+ ERROR_CHECK (TcgAddStartList (&CreateStruct));\r
+\r
+ ERROR_CHECK (TcgAddStartName (&CreateStruct));\r
+ ERROR_CHECK (TcgAddUINT8 (&CreateStruct, 0x07)); // "ReadLocked"\r
+ ERROR_CHECK (TcgAddBOOLEAN (&CreateStruct, ReadLocked));\r
+ ERROR_CHECK (TcgAddEndName (&CreateStruct));\r
+\r
+ ERROR_CHECK (TcgAddStartName (&CreateStruct));\r
+ ERROR_CHECK (TcgAddUINT8 (&CreateStruct, 0x08)); // "WriteLocked"\r
+ ERROR_CHECK (TcgAddBOOLEAN (&CreateStruct, WriteLocked));\r
+ ERROR_CHECK (TcgAddEndName (&CreateStruct));\r
+\r
+ ERROR_CHECK (TcgAddEndList (&CreateStruct));\r
+ ERROR_CHECK (TcgAddEndName (&CreateStruct));\r
+ ERROR_CHECK (TcgEndParameters (&CreateStruct));\r
+ ERROR_CHECK (TcgEndMethodCall (&CreateStruct));\r
+ ERROR_CHECK (TcgEndSubPacket (&CreateStruct));\r
+ ERROR_CHECK (TcgEndPacket (&CreateStruct));\r
+ ERROR_CHECK (TcgEndComPacket (&CreateStruct, &Size));\r
+\r
+ ERROR_CHECK (OpalPerformMethod (LockingSpSession, Size, Buf, sizeof (Buf), &ParseStruct, MethodStatus, 0));\r
+ METHOD_STATUS_ERROR_CHECK (*MethodStatus, TcgResultSuccess);\r
\r
return TcgResultSuccess;\r
}\r
**/\r
TCG_RESULT\r
EFIAPI\r
-OpalSetLockingRange(\r
- OPAL_SESSION *LockingSpSession,\r
- TCG_UID LockingRangeUid,\r
- UINT64 RangeStart,\r
- UINT64 RangeLength,\r
- BOOLEAN ReadLockEnabled,\r
- BOOLEAN WriteLockEnabled,\r
- BOOLEAN ReadLocked,\r
- BOOLEAN WriteLocked,\r
- UINT8 *MethodStatus\r
+OpalSetLockingRange (\r
+ OPAL_SESSION *LockingSpSession,\r
+ TCG_UID LockingRangeUid,\r
+ UINT64 RangeStart,\r
+ UINT64 RangeLength,\r
+ BOOLEAN ReadLockEnabled,\r
+ BOOLEAN WriteLockEnabled,\r
+ BOOLEAN ReadLocked,\r
+ BOOLEAN WriteLocked,\r
+ UINT8 *MethodStatus\r
)\r
{\r
- UINT8 Buf[BUFFER_SIZE];\r
- TCG_CREATE_STRUCT CreateStruct;\r
- TCG_PARSE_STRUCT ParseStruct;\r
- UINT32 Size;\r
+ UINT8 Buf[BUFFER_SIZE];\r
+ TCG_CREATE_STRUCT CreateStruct;\r
+ TCG_PARSE_STRUCT ParseStruct;\r
+ UINT32 Size;\r
\r
- NULL_CHECK(LockingSpSession);\r
- NULL_CHECK(MethodStatus);\r
+ NULL_CHECK (LockingSpSession);\r
+ NULL_CHECK (MethodStatus);\r
\r
- ERROR_CHECK(TcgInitTcgCreateStruct(&CreateStruct, Buf, sizeof(Buf)));\r
+ ERROR_CHECK (TcgInitTcgCreateStruct (&CreateStruct, Buf, sizeof (Buf)));\r
\r
//\r
// set locking range values\r
//\r
- ERROR_CHECK(TcgStartComPacket(&CreateStruct, LockingSpSession->OpalBaseComId, LockingSpSession->ComIdExtension));\r
- ERROR_CHECK(TcgStartPacket(&CreateStruct, LockingSpSession->TperSessionId, LockingSpSession->HostSessionId, 0x0, 0x0, 0x0));\r
- ERROR_CHECK(TcgStartSubPacket(&CreateStruct, 0x0));\r
- ERROR_CHECK(TcgStartMethodCall(&CreateStruct, LockingRangeUid, TCG_UID_METHOD_SET));\r
- ERROR_CHECK(TcgStartParameters(&CreateStruct));\r
- ERROR_CHECK(TcgAddStartName(&CreateStruct));\r
- ERROR_CHECK(TcgAddUINT8(&CreateStruct, 0x01)); // "Values"\r
- ERROR_CHECK(TcgAddStartList(&CreateStruct));\r
+ ERROR_CHECK (TcgStartComPacket (&CreateStruct, LockingSpSession->OpalBaseComId, LockingSpSession->ComIdExtension));\r
+ ERROR_CHECK (TcgStartPacket (&CreateStruct, LockingSpSession->TperSessionId, LockingSpSession->HostSessionId, 0x0, 0x0, 0x0));\r
+ ERROR_CHECK (TcgStartSubPacket (&CreateStruct, 0x0));\r
+ ERROR_CHECK (TcgStartMethodCall (&CreateStruct, LockingRangeUid, TCG_UID_METHOD_SET));\r
+ ERROR_CHECK (TcgStartParameters (&CreateStruct));\r
+ ERROR_CHECK (TcgAddStartName (&CreateStruct));\r
+ ERROR_CHECK (TcgAddUINT8 (&CreateStruct, 0x01)); // "Values"\r
+ ERROR_CHECK (TcgAddStartList (&CreateStruct));\r
\r
//\r
// range start and range Length only apply to non-global locking ranges\r
//\r
if (LockingRangeUid != OPAL_LOCKING_SP_LOCKING_GLOBALRANGE) {\r
- ERROR_CHECK(TcgAddStartName(&CreateStruct));\r
- ERROR_CHECK(TcgAddUINT8(&CreateStruct, 0x03)); // "RangeStart"\r
- ERROR_CHECK(TcgAddUINT64(&CreateStruct, RangeStart));\r
- ERROR_CHECK(TcgAddEndName(&CreateStruct));\r
-\r
- ERROR_CHECK(TcgAddStartName(&CreateStruct));\r
- ERROR_CHECK(TcgAddUINT8(&CreateStruct, 0x04)); // "RangeLength"\r
- ERROR_CHECK(TcgAddUINT64(&CreateStruct, RangeLength));\r
- ERROR_CHECK(TcgAddEndName(&CreateStruct));\r
+ ERROR_CHECK (TcgAddStartName (&CreateStruct));\r
+ ERROR_CHECK (TcgAddUINT8 (&CreateStruct, 0x03)); // "RangeStart"\r
+ ERROR_CHECK (TcgAddUINT64 (&CreateStruct, RangeStart));\r
+ ERROR_CHECK (TcgAddEndName (&CreateStruct));\r
+\r
+ ERROR_CHECK (TcgAddStartName (&CreateStruct));\r
+ ERROR_CHECK (TcgAddUINT8 (&CreateStruct, 0x04)); // "RangeLength"\r
+ ERROR_CHECK (TcgAddUINT64 (&CreateStruct, RangeLength));\r
+ ERROR_CHECK (TcgAddEndName (&CreateStruct));\r
}\r
\r
- ERROR_CHECK(TcgAddStartName(&CreateStruct));\r
- ERROR_CHECK(TcgAddUINT8(&CreateStruct, 0x05)); // "ReadLockEnabled"\r
- ERROR_CHECK(TcgAddBOOLEAN(&CreateStruct, ReadLockEnabled));\r
- ERROR_CHECK(TcgAddEndName(&CreateStruct));\r
-\r
- ERROR_CHECK(TcgAddStartName(&CreateStruct));\r
- ERROR_CHECK(TcgAddUINT8(&CreateStruct, 0x06)); // "WriteLockEnabled"\r
- ERROR_CHECK(TcgAddBOOLEAN(&CreateStruct, WriteLockEnabled));\r
- ERROR_CHECK(TcgAddEndName(&CreateStruct));\r
-\r
- ERROR_CHECK(TcgAddStartName(&CreateStruct));\r
- ERROR_CHECK(TcgAddUINT8(&CreateStruct, 0x07)); // "ReadLocked"\r
- ERROR_CHECK(TcgAddBOOLEAN(&CreateStruct, ReadLocked));\r
- ERROR_CHECK(TcgAddEndName(&CreateStruct));\r
-\r
- ERROR_CHECK(TcgAddStartName(&CreateStruct));\r
- ERROR_CHECK(TcgAddUINT8(&CreateStruct, 0x08)); // "WriteLocked"\r
- ERROR_CHECK(TcgAddBOOLEAN(&CreateStruct, WriteLocked));\r
- ERROR_CHECK(TcgAddEndName(&CreateStruct));\r
-\r
- ERROR_CHECK(TcgAddEndList(&CreateStruct));\r
- ERROR_CHECK(TcgAddEndName(&CreateStruct));\r
- ERROR_CHECK(TcgEndParameters(&CreateStruct));\r
- ERROR_CHECK(TcgEndMethodCall(&CreateStruct));\r
- ERROR_CHECK(TcgEndSubPacket(&CreateStruct));\r
- ERROR_CHECK(TcgEndPacket(&CreateStruct));\r
- ERROR_CHECK(TcgEndComPacket(&CreateStruct, &Size));\r
-\r
- ERROR_CHECK(OpalPerformMethod(LockingSpSession, Size, Buf, sizeof(Buf), &ParseStruct, MethodStatus, 0));\r
+ ERROR_CHECK (TcgAddStartName (&CreateStruct));\r
+ ERROR_CHECK (TcgAddUINT8 (&CreateStruct, 0x05)); // "ReadLockEnabled"\r
+ ERROR_CHECK (TcgAddBOOLEAN (&CreateStruct, ReadLockEnabled));\r
+ ERROR_CHECK (TcgAddEndName (&CreateStruct));\r
+\r
+ ERROR_CHECK (TcgAddStartName (&CreateStruct));\r
+ ERROR_CHECK (TcgAddUINT8 (&CreateStruct, 0x06)); // "WriteLockEnabled"\r
+ ERROR_CHECK (TcgAddBOOLEAN (&CreateStruct, WriteLockEnabled));\r
+ ERROR_CHECK (TcgAddEndName (&CreateStruct));\r
+\r
+ ERROR_CHECK (TcgAddStartName (&CreateStruct));\r
+ ERROR_CHECK (TcgAddUINT8 (&CreateStruct, 0x07)); // "ReadLocked"\r
+ ERROR_CHECK (TcgAddBOOLEAN (&CreateStruct, ReadLocked));\r
+ ERROR_CHECK (TcgAddEndName (&CreateStruct));\r
+\r
+ ERROR_CHECK (TcgAddStartName (&CreateStruct));\r
+ ERROR_CHECK (TcgAddUINT8 (&CreateStruct, 0x08)); // "WriteLocked"\r
+ ERROR_CHECK (TcgAddBOOLEAN (&CreateStruct, WriteLocked));\r
+ ERROR_CHECK (TcgAddEndName (&CreateStruct));\r
+\r
+ ERROR_CHECK (TcgAddEndList (&CreateStruct));\r
+ ERROR_CHECK (TcgAddEndName (&CreateStruct));\r
+ ERROR_CHECK (TcgEndParameters (&CreateStruct));\r
+ ERROR_CHECK (TcgEndMethodCall (&CreateStruct));\r
+ ERROR_CHECK (TcgEndSubPacket (&CreateStruct));\r
+ ERROR_CHECK (TcgEndPacket (&CreateStruct));\r
+ ERROR_CHECK (TcgEndComPacket (&CreateStruct, &Size));\r
+\r
+ ERROR_CHECK (OpalPerformMethod (LockingSpSession, Size, Buf, sizeof (Buf), &ParseStruct, MethodStatus, 0));\r
// Exit with success on method failure - user must inspect MethodStatus\r
- METHOD_STATUS_ERROR_CHECK(*MethodStatus, TcgResultSuccess);\r
+ METHOD_STATUS_ERROR_CHECK (*MethodStatus, TcgResultSuccess);\r
\r
return TcgResultSuccess;\r
}\r
**/\r
TCG_RESULT\r
EFIAPI\r
-OpalCreateRetrieveGlobalLockingRangeActiveKey(\r
- const OPAL_SESSION *Session,\r
- TCG_CREATE_STRUCT *CreateStruct,\r
- UINT32 *Size\r
+OpalCreateRetrieveGlobalLockingRangeActiveKey (\r
+ const OPAL_SESSION *Session,\r
+ TCG_CREATE_STRUCT *CreateStruct,\r
+ UINT32 *Size\r
)\r
{\r
- NULL_CHECK(Session);\r
- NULL_CHECK(CreateStruct);\r
- NULL_CHECK(Size);\r
+ NULL_CHECK (Session);\r
+ NULL_CHECK (CreateStruct);\r
+ NULL_CHECK (Size);\r
\r
// Retrieve the activekey in order to know which globalrange key to generate\r
- ERROR_CHECK(TcgStartComPacket(CreateStruct, Session->OpalBaseComId, Session->ComIdExtension));\r
- ERROR_CHECK(TcgStartPacket(CreateStruct, Session->TperSessionId, Session->HostSessionId, 0x0, 0x0, 0x0));\r
- ERROR_CHECK(TcgStartSubPacket(CreateStruct, 0x0));\r
- ERROR_CHECK(TcgStartMethodCall(CreateStruct, OPAL_LOCKING_SP_LOCKING_GLOBALRANGE, TCG_UID_METHOD_GET));\r
- ERROR_CHECK(TcgStartParameters(CreateStruct));\r
- ERROR_CHECK(TcgAddStartList(CreateStruct));\r
- ERROR_CHECK(TcgAddStartName(CreateStruct));\r
- ERROR_CHECK(TcgAddUINT8(CreateStruct, TCG_CELL_BLOCK_START_COLUMN_NAME));\r
- ERROR_CHECK(TcgAddUINT8(CreateStruct, 0x0A)); // ActiveKey\r
- ERROR_CHECK(TcgAddEndName(CreateStruct));\r
- ERROR_CHECK(TcgAddStartName(CreateStruct));\r
- ERROR_CHECK(TcgAddUINT8(CreateStruct, TCG_CELL_BLOCK_END_COLUMN_NAME));\r
- ERROR_CHECK(TcgAddUINT8(CreateStruct, 0x0A));\r
- ERROR_CHECK(TcgAddEndName(CreateStruct));\r
- ERROR_CHECK(TcgAddEndList(CreateStruct));\r
- ERROR_CHECK(TcgEndParameters(CreateStruct));\r
- ERROR_CHECK(TcgEndMethodCall(CreateStruct));\r
- ERROR_CHECK(TcgEndSubPacket(CreateStruct));\r
- ERROR_CHECK(TcgEndPacket(CreateStruct));\r
- ERROR_CHECK(TcgEndComPacket(CreateStruct, Size));\r
+ ERROR_CHECK (TcgStartComPacket (CreateStruct, Session->OpalBaseComId, Session->ComIdExtension));\r
+ ERROR_CHECK (TcgStartPacket (CreateStruct, Session->TperSessionId, Session->HostSessionId, 0x0, 0x0, 0x0));\r
+ ERROR_CHECK (TcgStartSubPacket (CreateStruct, 0x0));\r
+ ERROR_CHECK (TcgStartMethodCall (CreateStruct, OPAL_LOCKING_SP_LOCKING_GLOBALRANGE, TCG_UID_METHOD_GET));\r
+ ERROR_CHECK (TcgStartParameters (CreateStruct));\r
+ ERROR_CHECK (TcgAddStartList (CreateStruct));\r
+ ERROR_CHECK (TcgAddStartName (CreateStruct));\r
+ ERROR_CHECK (TcgAddUINT8 (CreateStruct, TCG_CELL_BLOCK_START_COLUMN_NAME));\r
+ ERROR_CHECK (TcgAddUINT8 (CreateStruct, 0x0A)); // ActiveKey\r
+ ERROR_CHECK (TcgAddEndName (CreateStruct));\r
+ ERROR_CHECK (TcgAddStartName (CreateStruct));\r
+ ERROR_CHECK (TcgAddUINT8 (CreateStruct, TCG_CELL_BLOCK_END_COLUMN_NAME));\r
+ ERROR_CHECK (TcgAddUINT8 (CreateStruct, 0x0A));\r
+ ERROR_CHECK (TcgAddEndName (CreateStruct));\r
+ ERROR_CHECK (TcgAddEndList (CreateStruct));\r
+ ERROR_CHECK (TcgEndParameters (CreateStruct));\r
+ ERROR_CHECK (TcgEndMethodCall (CreateStruct));\r
+ ERROR_CHECK (TcgEndSubPacket (CreateStruct));\r
+ ERROR_CHECK (TcgEndPacket (CreateStruct));\r
+ ERROR_CHECK (TcgEndComPacket (CreateStruct, Size));\r
\r
return TcgResultSuccess;\r
}\r
**/\r
TCG_RESULT\r
EFIAPI\r
-OpalParseRetrieveGlobalLockingRangeActiveKey(\r
+OpalParseRetrieveGlobalLockingRangeActiveKey (\r
TCG_PARSE_STRUCT *ParseStruct,\r
TCG_UID *ActiveKey\r
)\r
{\r
- UINT32 ColumnName;\r
+ UINT32 ColumnName;\r
\r
- NULL_CHECK(ParseStruct);\r
- NULL_CHECK(ActiveKey);\r
+ NULL_CHECK (ParseStruct);\r
+ NULL_CHECK (ActiveKey);\r
\r
// parse response\r
- ERROR_CHECK(TcgGetNextStartList(ParseStruct));\r
- ERROR_CHECK(TcgGetNextStartList(ParseStruct));\r
- ERROR_CHECK(TcgGetNextStartName(ParseStruct));\r
- ERROR_CHECK(TcgGetNextUINT32(ParseStruct, &ColumnName));\r
- ERROR_CHECK(TcgGetNextTcgUid(ParseStruct, ActiveKey));\r
- ERROR_CHECK(TcgGetNextEndName(ParseStruct));\r
- ERROR_CHECK(TcgGetNextEndList(ParseStruct));\r
- ERROR_CHECK(TcgGetNextEndList(ParseStruct));\r
- ERROR_CHECK(TcgGetNextEndOfData(ParseStruct));\r
+ ERROR_CHECK (TcgGetNextStartList (ParseStruct));\r
+ ERROR_CHECK (TcgGetNextStartList (ParseStruct));\r
+ ERROR_CHECK (TcgGetNextStartName (ParseStruct));\r
+ ERROR_CHECK (TcgGetNextUINT32 (ParseStruct, &ColumnName));\r
+ ERROR_CHECK (TcgGetNextTcgUid (ParseStruct, ActiveKey));\r
+ ERROR_CHECK (TcgGetNextEndName (ParseStruct));\r
+ ERROR_CHECK (TcgGetNextEndList (ParseStruct));\r
+ ERROR_CHECK (TcgGetNextEndList (ParseStruct));\r
+ ERROR_CHECK (TcgGetNextEndOfData (ParseStruct));\r
\r
if (ColumnName != 0x0A) {\r
DEBUG ((DEBUG_INFO, "Unexpected column name %u (exp 0x0A)\n", ColumnName));\r
return TcgResultFailure;\r
}\r
\r
- if (*ActiveKey != OPAL_LOCKING_SP_K_AES_256_GLOBALRANGE_KEY && *ActiveKey != OPAL_LOCKING_SP_K_AES_128_GLOBALRANGE_KEY) {\r
+ if ((*ActiveKey != OPAL_LOCKING_SP_K_AES_256_GLOBALRANGE_KEY) && (*ActiveKey != OPAL_LOCKING_SP_K_AES_128_GLOBALRANGE_KEY)) {\r
DEBUG ((DEBUG_INFO, "Unexpected gen key %u (exp %u or %u)\n", *ActiveKey, OPAL_LOCKING_SP_K_AES_256_GLOBALRANGE_KEY, OPAL_LOCKING_SP_K_AES_128_GLOBALRANGE_KEY));\r
return TcgResultFailure;\r
}\r
**/\r
TCG_RESULT\r
EFIAPI\r
-OpalGetTryLimit(\r
- OPAL_SESSION *LockingSpSession,\r
- TCG_UID RowUid,\r
- UINT32 *TryLimit\r
+OpalGetTryLimit (\r
+ OPAL_SESSION *LockingSpSession,\r
+ TCG_UID RowUid,\r
+ UINT32 *TryLimit\r
)\r
{\r
- TCG_CREATE_STRUCT CreateStruct;\r
- TCG_PARSE_STRUCT ParseStruct;\r
- UINT32 Size;\r
- UINT8 MethodStatus;\r
- UINT8 Buf[BUFFER_SIZE];\r
- UINT32 Col;\r
-\r
- NULL_CHECK(LockingSpSession);\r
- NULL_CHECK(TryLimit);\r
-\r
- ERROR_CHECK(TcgInitTcgCreateStruct(&CreateStruct, Buf, sizeof(Buf)));\r
- ERROR_CHECK(TcgStartComPacket(&CreateStruct, LockingSpSession->OpalBaseComId, LockingSpSession->ComIdExtension));\r
- ERROR_CHECK(TcgStartPacket(&CreateStruct, LockingSpSession->TperSessionId, LockingSpSession->HostSessionId, 0x0, 0x0, 0x0));\r
- ERROR_CHECK(TcgStartSubPacket(&CreateStruct, 0x0));\r
- ERROR_CHECK(TcgStartMethodCall(&CreateStruct, RowUid, TCG_UID_METHOD_GET));\r
- ERROR_CHECK(TcgStartParameters(&CreateStruct));\r
- ERROR_CHECK(TcgAddStartList(&CreateStruct));\r
- ERROR_CHECK(TcgAddStartName(&CreateStruct));\r
- ERROR_CHECK(TcgAddUINT8(&CreateStruct, TCG_CELL_BLOCK_START_COLUMN_NAME));\r
- ERROR_CHECK(TcgAddUINT8(&CreateStruct, OPAL_LOCKING_SP_C_PIN_TRYLIMIT_COL));\r
- ERROR_CHECK(TcgAddEndName(&CreateStruct));\r
- ERROR_CHECK(TcgAddStartName(&CreateStruct));\r
- ERROR_CHECK(TcgAddUINT8(&CreateStruct, TCG_CELL_BLOCK_END_COLUMN_NAME));\r
- ERROR_CHECK(TcgAddUINT8(&CreateStruct, OPAL_LOCKING_SP_C_PIN_TRYLIMIT_COL));\r
- ERROR_CHECK(TcgAddEndName(&CreateStruct));\r
- ERROR_CHECK(TcgAddEndList(&CreateStruct));\r
- ERROR_CHECK(TcgEndParameters(&CreateStruct));\r
- ERROR_CHECK(TcgEndMethodCall(&CreateStruct));\r
- ERROR_CHECK(TcgEndSubPacket(&CreateStruct));\r
- ERROR_CHECK(TcgEndPacket(&CreateStruct));\r
- ERROR_CHECK(TcgEndComPacket(&CreateStruct, &Size));\r
-\r
- ERROR_CHECK(OpalPerformMethod(LockingSpSession, Size, Buf, sizeof(Buf), &ParseStruct, &MethodStatus, 0));\r
- METHOD_STATUS_ERROR_CHECK(MethodStatus, TcgResultFailure);\r
-\r
- ERROR_CHECK(TcgGetNextStartList(&ParseStruct));\r
- ERROR_CHECK(TcgGetNextStartList(&ParseStruct));\r
- ERROR_CHECK(TcgGetNextStartName(&ParseStruct));\r
- ERROR_CHECK(TcgGetNextUINT32(&ParseStruct, &Col));\r
- ERROR_CHECK(TcgGetNextUINT32(&ParseStruct, TryLimit));\r
- ERROR_CHECK(TcgGetNextEndName(&ParseStruct));\r
- ERROR_CHECK(TcgGetNextEndList(&ParseStruct));\r
- ERROR_CHECK(TcgGetNextEndList(&ParseStruct));\r
- ERROR_CHECK(TcgGetNextEndOfData(&ParseStruct));\r
+ TCG_CREATE_STRUCT CreateStruct;\r
+ TCG_PARSE_STRUCT ParseStruct;\r
+ UINT32 Size;\r
+ UINT8 MethodStatus;\r
+ UINT8 Buf[BUFFER_SIZE];\r
+ UINT32 Col;\r
+\r
+ NULL_CHECK (LockingSpSession);\r
+ NULL_CHECK (TryLimit);\r
+\r
+ ERROR_CHECK (TcgInitTcgCreateStruct (&CreateStruct, Buf, sizeof (Buf)));\r
+ ERROR_CHECK (TcgStartComPacket (&CreateStruct, LockingSpSession->OpalBaseComId, LockingSpSession->ComIdExtension));\r
+ ERROR_CHECK (TcgStartPacket (&CreateStruct, LockingSpSession->TperSessionId, LockingSpSession->HostSessionId, 0x0, 0x0, 0x0));\r
+ ERROR_CHECK (TcgStartSubPacket (&CreateStruct, 0x0));\r
+ ERROR_CHECK (TcgStartMethodCall (&CreateStruct, RowUid, TCG_UID_METHOD_GET));\r
+ ERROR_CHECK (TcgStartParameters (&CreateStruct));\r
+ ERROR_CHECK (TcgAddStartList (&CreateStruct));\r
+ ERROR_CHECK (TcgAddStartName (&CreateStruct));\r
+ ERROR_CHECK (TcgAddUINT8 (&CreateStruct, TCG_CELL_BLOCK_START_COLUMN_NAME));\r
+ ERROR_CHECK (TcgAddUINT8 (&CreateStruct, OPAL_LOCKING_SP_C_PIN_TRYLIMIT_COL));\r
+ ERROR_CHECK (TcgAddEndName (&CreateStruct));\r
+ ERROR_CHECK (TcgAddStartName (&CreateStruct));\r
+ ERROR_CHECK (TcgAddUINT8 (&CreateStruct, TCG_CELL_BLOCK_END_COLUMN_NAME));\r
+ ERROR_CHECK (TcgAddUINT8 (&CreateStruct, OPAL_LOCKING_SP_C_PIN_TRYLIMIT_COL));\r
+ ERROR_CHECK (TcgAddEndName (&CreateStruct));\r
+ ERROR_CHECK (TcgAddEndList (&CreateStruct));\r
+ ERROR_CHECK (TcgEndParameters (&CreateStruct));\r
+ ERROR_CHECK (TcgEndMethodCall (&CreateStruct));\r
+ ERROR_CHECK (TcgEndSubPacket (&CreateStruct));\r
+ ERROR_CHECK (TcgEndPacket (&CreateStruct));\r
+ ERROR_CHECK (TcgEndComPacket (&CreateStruct, &Size));\r
+\r
+ ERROR_CHECK (OpalPerformMethod (LockingSpSession, Size, Buf, sizeof (Buf), &ParseStruct, &MethodStatus, 0));\r
+ METHOD_STATUS_ERROR_CHECK (MethodStatus, TcgResultFailure);\r
+\r
+ ERROR_CHECK (TcgGetNextStartList (&ParseStruct));\r
+ ERROR_CHECK (TcgGetNextStartList (&ParseStruct));\r
+ ERROR_CHECK (TcgGetNextStartName (&ParseStruct));\r
+ ERROR_CHECK (TcgGetNextUINT32 (&ParseStruct, &Col));\r
+ ERROR_CHECK (TcgGetNextUINT32 (&ParseStruct, TryLimit));\r
+ ERROR_CHECK (TcgGetNextEndName (&ParseStruct));\r
+ ERROR_CHECK (TcgGetNextEndList (&ParseStruct));\r
+ ERROR_CHECK (TcgGetNextEndList (&ParseStruct));\r
+ ERROR_CHECK (TcgGetNextEndOfData (&ParseStruct));\r
\r
if (Col != OPAL_LOCKING_SP_C_PIN_TRYLIMIT_COL) {\r
DEBUG ((DEBUG_INFO, "ERROR: got col %u, expected %u\n", Col, OPAL_LOCKING_SP_C_PIN_TRYLIMIT_COL));\r
**/\r
TCG_RESULT\r
EFIAPI\r
-OpalGetSupportedAttributesInfo(\r
+OpalGetSupportedAttributesInfo (\r
IN OPAL_SESSION *Session,\r
OUT OPAL_DISK_SUPPORT_ATTRIBUTE *SupportedAttributes,\r
OUT UINT16 *OpalBaseComId\r
)\r
{\r
- UINT8 Buffer[BUFFER_SIZE];\r
- TCG_SUPPORTED_SECURITY_PROTOCOLS *SupportedProtocols;\r
- TCG_LEVEL0_DISCOVERY_HEADER *DiscoveryHeader;\r
- OPAL_LEVEL0_FEATURE_DESCRIPTOR *Feat;\r
- OPAL_LEVEL0_FEATURE_DESCRIPTOR *Feat2;\r
- UINTN Size;\r
- UINTN Size2;\r
+ UINT8 Buffer[BUFFER_SIZE];\r
+ TCG_SUPPORTED_SECURITY_PROTOCOLS *SupportedProtocols;\r
+ TCG_LEVEL0_DISCOVERY_HEADER *DiscoveryHeader;\r
+ OPAL_LEVEL0_FEATURE_DESCRIPTOR *Feat;\r
+ OPAL_LEVEL0_FEATURE_DESCRIPTOR *Feat2;\r
+ UINTN Size;\r
+ UINTN Size2;\r
+\r
+ NULL_CHECK (Session);\r
+ NULL_CHECK (SupportedAttributes);\r
+ NULL_CHECK (OpalBaseComId);\r
\r
- NULL_CHECK(Session);\r
- NULL_CHECK(SupportedAttributes);\r
- NULL_CHECK(OpalBaseComId);\r
-\r
- ZeroMem(Buffer, BUFFER_SIZE);\r
- ZeroMem(SupportedAttributes, sizeof(OPAL_DISK_SUPPORT_ATTRIBUTE));\r
- ASSERT(sizeof(Buffer) >= sizeof(TCG_SUPPORTED_SECURITY_PROTOCOLS));\r
+ ZeroMem (Buffer, BUFFER_SIZE);\r
+ ZeroMem (SupportedAttributes, sizeof (OPAL_DISK_SUPPORT_ATTRIBUTE));\r
+ ASSERT (sizeof (Buffer) >= sizeof (TCG_SUPPORTED_SECURITY_PROTOCOLS));\r
\r
//\r
// Retrieve supported protocols verify security protocol 1 is supported\r
//\r
- SupportedProtocols = (TCG_SUPPORTED_SECURITY_PROTOCOLS*) Buffer;\r
+ SupportedProtocols = (TCG_SUPPORTED_SECURITY_PROTOCOLS *)Buffer;\r
\r
//\r
// Get list of supported protocols\r
//\r
- if (OpalRetrieveSupportedProtocolList (Session, sizeof(TCG_SUPPORTED_SECURITY_PROTOCOLS), SupportedProtocols) == TcgResultFailure) {\r
+ if (OpalRetrieveSupportedProtocolList (Session, sizeof (TCG_SUPPORTED_SECURITY_PROTOCOLS), SupportedProtocols) == TcgResultFailure) {\r
DEBUG ((DEBUG_INFO, "OpalRetrieveSupportedProtocolList failed\n"));\r
return TcgResultFailure;\r
}\r
\r
- SupportedAttributes->Sp1 = TcgIsProtocolSupported (SupportedProtocols, TCG_OPAL_SECURITY_PROTOCOL_1);\r
- SupportedAttributes->Sp2 = TcgIsProtocolSupported (SupportedProtocols, TCG_OPAL_SECURITY_PROTOCOL_2);\r
+ SupportedAttributes->Sp1 = TcgIsProtocolSupported (SupportedProtocols, TCG_OPAL_SECURITY_PROTOCOL_1);\r
+ SupportedAttributes->Sp2 = TcgIsProtocolSupported (SupportedProtocols, TCG_OPAL_SECURITY_PROTOCOL_2);\r
SupportedAttributes->SpIeee1667 = TcgIsProtocolSupported (SupportedProtocols, TCG_SECURITY_PROTOCOL_IEEE_1667);\r
\r
- DEBUG ((DEBUG_INFO, "Supported Protocols: Sp1 %d Sp2: %d SpIeee1667 %d \n",\r
- SupportedAttributes->Sp1,\r
- SupportedAttributes->Sp2,\r
- SupportedAttributes->SpIeee1667\r
- ));\r
+ DEBUG ((\r
+ DEBUG_INFO,\r
+ "Supported Protocols: Sp1 %d Sp2: %d SpIeee1667 %d \n",\r
+ SupportedAttributes->Sp1,\r
+ SupportedAttributes->Sp2,\r
+ SupportedAttributes->SpIeee1667\r
+ ));\r
\r
//\r
// Perform level 0 discovery and assign desired feature info to Opal Disk structure\r
//\r
// Check for required feature descriptors\r
//\r
- DiscoveryHeader = (TCG_LEVEL0_DISCOVERY_HEADER*) Buffer;\r
+ DiscoveryHeader = (TCG_LEVEL0_DISCOVERY_HEADER *)Buffer;\r
\r
- Size = 0;\r
- Feat = (OPAL_LEVEL0_FEATURE_DESCRIPTOR*) TcgGetFeature (DiscoveryHeader, TCG_FEATURE_OPAL_SSC_V2_0_0, &Size);\r
+ Size = 0;\r
+ Feat = (OPAL_LEVEL0_FEATURE_DESCRIPTOR *)TcgGetFeature (DiscoveryHeader, TCG_FEATURE_OPAL_SSC_V2_0_0, &Size);\r
SupportedAttributes->OpalSsc2 = (Feat != NULL);\r
\r
*OpalBaseComId = TCG_RESERVED_COMID;\r
//\r
// Check Opal SCC V2 has valid settings for SID C_PIN on revert\r
//\r
- if (SupportedAttributes->OpalSsc2 && Size >= sizeof (OPAL_SSCV2_FEATURE_DESCRIPTOR)) {\r
+ if (SupportedAttributes->OpalSsc2 && (Size >= sizeof (OPAL_SSCV2_FEATURE_DESCRIPTOR))) {\r
//\r
// Want opposite polarity b/c Value is greater than a bit, but we only care about non-zero vs zero\r
//\r
SupportedAttributes->InitCpinIndicator = (Feat->OpalSscV2.InitialCPINSIDPIN == 0);\r
- SupportedAttributes->CpinUponRevert = (Feat->OpalSscV2.CPINSIDPINRevertBehavior == 0);\r
- DEBUG ((DEBUG_INFO, "Opal SSC V2 InitCpinIndicator %d CpinUponRevert %d \n",\r
- SupportedAttributes->InitCpinIndicator,\r
- SupportedAttributes->CpinUponRevert\r
- ));\r
+ SupportedAttributes->CpinUponRevert = (Feat->OpalSscV2.CPINSIDPINRevertBehavior == 0);\r
+ DEBUG ((\r
+ DEBUG_INFO,\r
+ "Opal SSC V2 InitCpinIndicator %d CpinUponRevert %d \n",\r
+ SupportedAttributes->InitCpinIndicator,\r
+ SupportedAttributes->CpinUponRevert\r
+ ));\r
*OpalBaseComId = SwapBytes16 (Feat->OpalSscV2.BaseComdIdBE);\r
}\r
\r
- Size = 0;\r
- Feat = (OPAL_LEVEL0_FEATURE_DESCRIPTOR*) TcgGetFeature (DiscoveryHeader, TCG_FEATURE_OPAL_SSC_LITE, &Size);\r
+ Size = 0;\r
+ Feat = (OPAL_LEVEL0_FEATURE_DESCRIPTOR *)TcgGetFeature (DiscoveryHeader, TCG_FEATURE_OPAL_SSC_LITE, &Size);\r
SupportedAttributes->OpalSscLite = (Feat != NULL);\r
\r
- if (Feat != NULL && Size >= sizeof (OPAL_SSCLITE_FEATURE_DESCRIPTOR)) {\r
+ if ((Feat != NULL) && (Size >= sizeof (OPAL_SSCLITE_FEATURE_DESCRIPTOR))) {\r
if (*OpalBaseComId == TCG_RESERVED_COMID) {\r
//\r
// Pin values used always match up with ComId used\r
//\r
- *OpalBaseComId = SwapBytes16 (Feat->OpalSscLite.BaseComdIdBE);\r
+ *OpalBaseComId = SwapBytes16 (Feat->OpalSscLite.BaseComdIdBE);\r
SupportedAttributes->InitCpinIndicator = (Feat->OpalSscV2.InitialCPINSIDPIN == 0);\r
- SupportedAttributes->CpinUponRevert = (Feat->OpalSscV2.CPINSIDPINRevertBehavior == 0);\r
- DEBUG ((DEBUG_INFO, "Opal SSC Lite InitCpinIndicator %d CpinUponRevert %d \n",\r
- SupportedAttributes->InitCpinIndicator,\r
- SupportedAttributes->CpinUponRevert\r
- ));\r
+ SupportedAttributes->CpinUponRevert = (Feat->OpalSscV2.CPINSIDPINRevertBehavior == 0);\r
+ DEBUG ((\r
+ DEBUG_INFO,\r
+ "Opal SSC Lite InitCpinIndicator %d CpinUponRevert %d \n",\r
+ SupportedAttributes->InitCpinIndicator,\r
+ SupportedAttributes->CpinUponRevert\r
+ ));\r
}\r
}\r
\r
// For some pyrite 2.0 device, it contains both pyrite 1.0 and 2.0 feature data.\r
// so here try to get data from pyrite 2.0 feature data first.\r
//\r
- Size = 0;\r
- Feat = (OPAL_LEVEL0_FEATURE_DESCRIPTOR*) TcgGetFeature (DiscoveryHeader, TCG_FEATURE_PYRITE_SSC, &Size);\r
+ Size = 0;\r
+ Feat = (OPAL_LEVEL0_FEATURE_DESCRIPTOR *)TcgGetFeature (DiscoveryHeader, TCG_FEATURE_PYRITE_SSC, &Size);\r
Size2 = 0;\r
- Feat2 = (OPAL_LEVEL0_FEATURE_DESCRIPTOR*) TcgGetFeature (DiscoveryHeader, TCG_FEATURE_PYRITE_SSC_V2_0_0, &Size2);\r
- if (Feat2 != NULL && Size2 >= sizeof (PYRITE_SSCV2_FEATURE_DESCRIPTOR)) {\r
+ Feat2 = (OPAL_LEVEL0_FEATURE_DESCRIPTOR *)TcgGetFeature (DiscoveryHeader, TCG_FEATURE_PYRITE_SSC_V2_0_0, &Size2);\r
+ if ((Feat2 != NULL) && (Size2 >= sizeof (PYRITE_SSCV2_FEATURE_DESCRIPTOR))) {\r
SupportedAttributes->PyriteSscV2 = TRUE;\r
if (*OpalBaseComId == TCG_RESERVED_COMID) {\r
- *OpalBaseComId = SwapBytes16 (Feat2->PyriteSscV2.BaseComdIdBE);\r
+ *OpalBaseComId = SwapBytes16 (Feat2->PyriteSscV2.BaseComdIdBE);\r
SupportedAttributes->InitCpinIndicator = (Feat2->PyriteSscV2.InitialCPINSIDPIN == 0);\r
- SupportedAttributes->CpinUponRevert = (Feat2->PyriteSscV2.CPINSIDPINRevertBehavior == 0);\r
- DEBUG ((DEBUG_INFO, "Pyrite SSC V2 InitCpinIndicator %d CpinUponRevert %d \n",\r
- SupportedAttributes->InitCpinIndicator,\r
- SupportedAttributes->CpinUponRevert\r
- ));\r
+ SupportedAttributes->CpinUponRevert = (Feat2->PyriteSscV2.CPINSIDPINRevertBehavior == 0);\r
+ DEBUG ((\r
+ DEBUG_INFO,\r
+ "Pyrite SSC V2 InitCpinIndicator %d CpinUponRevert %d \n",\r
+ SupportedAttributes->InitCpinIndicator,\r
+ SupportedAttributes->CpinUponRevert\r
+ ));\r
}\r
} else {\r
SupportedAttributes->PyriteSsc = (Feat != NULL);\r
- if (Feat != NULL && Size >= sizeof (PYRITE_SSC_FEATURE_DESCRIPTOR)) {\r
+ if ((Feat != NULL) && (Size >= sizeof (PYRITE_SSC_FEATURE_DESCRIPTOR))) {\r
if (*OpalBaseComId == TCG_RESERVED_COMID) {\r
- *OpalBaseComId = SwapBytes16 (Feat->PyriteSsc.BaseComdIdBE);\r
+ *OpalBaseComId = SwapBytes16 (Feat->PyriteSsc.BaseComdIdBE);\r
SupportedAttributes->InitCpinIndicator = (Feat->PyriteSsc.InitialCPINSIDPIN == 0);\r
- SupportedAttributes->CpinUponRevert = (Feat->PyriteSsc.CPINSIDPINRevertBehavior == 0);\r
- DEBUG ((DEBUG_INFO, "Pyrite SSC InitCpinIndicator %d CpinUponRevert %d \n",\r
- SupportedAttributes->InitCpinIndicator,\r
- SupportedAttributes->CpinUponRevert\r
- ));\r
+ SupportedAttributes->CpinUponRevert = (Feat->PyriteSsc.CPINSIDPINRevertBehavior == 0);\r
+ DEBUG ((\r
+ DEBUG_INFO,\r
+ "Pyrite SSC InitCpinIndicator %d CpinUponRevert %d \n",\r
+ SupportedAttributes->InitCpinIndicator,\r
+ SupportedAttributes->CpinUponRevert\r
+ ));\r
}\r
}\r
}\r
\r
- Size = 0;\r
- Feat = (OPAL_LEVEL0_FEATURE_DESCRIPTOR*) TcgGetFeature (DiscoveryHeader, TCG_FEATURE_OPAL_SSC_V1_0_0, &Size);\r
+ Size = 0;\r
+ Feat = (OPAL_LEVEL0_FEATURE_DESCRIPTOR *)TcgGetFeature (DiscoveryHeader, TCG_FEATURE_OPAL_SSC_V1_0_0, &Size);\r
SupportedAttributes->OpalSsc1 = (Feat != NULL);\r
- if (Feat != NULL && Size >= sizeof (OPAL_SSCV1_FEATURE_DESCRIPTOR)) {\r
+ if ((Feat != NULL) && (Size >= sizeof (OPAL_SSCV1_FEATURE_DESCRIPTOR))) {\r
if (*OpalBaseComId == TCG_RESERVED_COMID) {\r
*OpalBaseComId = SwapBytes16 (Feat->OpalSscV1.BaseComdIdBE);\r
}\r
}\r
\r
Size = 0;\r
- Feat = (OPAL_LEVEL0_FEATURE_DESCRIPTOR*) TcgGetFeature (DiscoveryHeader, TCG_FEATURE_LOCKING, &Size);\r
- if (Feat != NULL && Size >= sizeof (TCG_LOCKING_FEATURE_DESCRIPTOR)) {\r
+ Feat = (OPAL_LEVEL0_FEATURE_DESCRIPTOR *)TcgGetFeature (DiscoveryHeader, TCG_FEATURE_LOCKING, &Size);\r
+ if ((Feat != NULL) && (Size >= sizeof (TCG_LOCKING_FEATURE_DESCRIPTOR))) {\r
SupportedAttributes->MediaEncryption = Feat->Locking.MediaEncryption;\r
DEBUG ((DEBUG_INFO, "SupportedAttributes->MediaEncryption 0x%X \n", SupportedAttributes->MediaEncryption));\r
}\r
\r
Size = 0;\r
- Feat = (OPAL_LEVEL0_FEATURE_DESCRIPTOR*) TcgGetFeature (DiscoveryHeader, TCG_FEATURE_BLOCK_SID, &Size);\r
- if (Feat != NULL && Size >= sizeof (TCG_BLOCK_SID_FEATURE_DESCRIPTOR)) {\r
+ Feat = (OPAL_LEVEL0_FEATURE_DESCRIPTOR *)TcgGetFeature (DiscoveryHeader, TCG_FEATURE_BLOCK_SID, &Size);\r
+ if ((Feat != NULL) && (Size >= sizeof (TCG_BLOCK_SID_FEATURE_DESCRIPTOR))) {\r
SupportedAttributes->BlockSid = TRUE;\r
DEBUG ((DEBUG_INFO, "BlockSid Supported!!! Current Status is 0x%X \n", Feat->BlockSid.SIDBlockedState));\r
} else {\r
}\r
\r
Size = 0;\r
- Feat = (OPAL_LEVEL0_FEATURE_DESCRIPTOR*) TcgGetFeature (DiscoveryHeader, TCG_FEATURE_DATA_REMOVAL, &Size);\r
- if (Feat != NULL && Size >= sizeof (DATA_REMOVAL_FEATURE_DESCRIPTOR)) {\r
+ Feat = (OPAL_LEVEL0_FEATURE_DESCRIPTOR *)TcgGetFeature (DiscoveryHeader, TCG_FEATURE_DATA_REMOVAL, &Size);\r
+ if ((Feat != NULL) && (Size >= sizeof (DATA_REMOVAL_FEATURE_DESCRIPTOR))) {\r
SupportedAttributes->DataRemoval = TRUE;\r
DEBUG ((DEBUG_INFO, "DataRemoval Feature Supported!\n"));\r
DEBUG ((DEBUG_INFO, "Operation Processing = 0x%x\n", Feat->DataRemoval.OperationProcessing));\r
**/\r
TCG_RESULT\r
EFIAPI\r
-OpalGetLockingInfo(\r
- OPAL_SESSION *Session,\r
- TCG_LOCKING_FEATURE_DESCRIPTOR *LockingFeature\r
+OpalGetLockingInfo (\r
+ OPAL_SESSION *Session,\r
+ TCG_LOCKING_FEATURE_DESCRIPTOR *LockingFeature\r
)\r
{\r
- UINT8 Buffer[BUFFER_SIZE];\r
- TCG_LEVEL0_DISCOVERY_HEADER *DiscoveryHeader;\r
- OPAL_LEVEL0_FEATURE_DESCRIPTOR *Feat;\r
- UINTN Size;\r
+ UINT8 Buffer[BUFFER_SIZE];\r
+ TCG_LEVEL0_DISCOVERY_HEADER *DiscoveryHeader;\r
+ OPAL_LEVEL0_FEATURE_DESCRIPTOR *Feat;\r
+ UINTN Size;\r
\r
- NULL_CHECK(Session);\r
- NULL_CHECK(LockingFeature);\r
+ NULL_CHECK (Session);\r
+ NULL_CHECK (LockingFeature);\r
\r
- ZeroMem(Buffer, BUFFER_SIZE);\r
- ASSERT(sizeof(Buffer) >= sizeof(TCG_SUPPORTED_SECURITY_PROTOCOLS));\r
+ ZeroMem (Buffer, BUFFER_SIZE);\r
+ ASSERT (sizeof (Buffer) >= sizeof (TCG_SUPPORTED_SECURITY_PROTOCOLS));\r
\r
if (OpalRetrieveLevel0DiscoveryHeader (Session, BUFFER_SIZE, Buffer) == TcgResultFailure) {\r
DEBUG ((DEBUG_INFO, "OpalRetrieveLevel0DiscoveryHeader failed\n"));\r
return TcgResultFailure;\r
}\r
- DiscoveryHeader = (TCG_LEVEL0_DISCOVERY_HEADER*) Buffer;\r
+\r
+ DiscoveryHeader = (TCG_LEVEL0_DISCOVERY_HEADER *)Buffer;\r
\r
Size = 0;\r
- Feat = (OPAL_LEVEL0_FEATURE_DESCRIPTOR*) TcgGetFeature (DiscoveryHeader, TCG_FEATURE_LOCKING, &Size);\r
- if (Feat != NULL && Size >= sizeof (TCG_LOCKING_FEATURE_DESCRIPTOR)) {\r
+ Feat = (OPAL_LEVEL0_FEATURE_DESCRIPTOR *)TcgGetFeature (DiscoveryHeader, TCG_FEATURE_LOCKING, &Size);\r
+ if ((Feat != NULL) && (Size >= sizeof (TCG_LOCKING_FEATURE_DESCRIPTOR))) {\r
CopyMem (LockingFeature, &Feat->Locking, sizeof (TCG_LOCKING_FEATURE_DESCRIPTOR));\r
}\r
\r
**/\r
TCG_RESULT\r
OpalGetFeatureDescriptor (\r
- IN OPAL_SESSION *Session,\r
- IN UINT16 FeatureCode,\r
- IN OUT UINTN *DataSize,\r
- OUT VOID *Data\r
+ IN OPAL_SESSION *Session,\r
+ IN UINT16 FeatureCode,\r
+ IN OUT UINTN *DataSize,\r
+ OUT VOID *Data\r
)\r
{\r
- UINT8 Buffer[BUFFER_SIZE];\r
- TCG_LEVEL0_DISCOVERY_HEADER *DiscoveryHeader;\r
- OPAL_LEVEL0_FEATURE_DESCRIPTOR *Feat;\r
- UINTN Size;\r
+ UINT8 Buffer[BUFFER_SIZE];\r
+ TCG_LEVEL0_DISCOVERY_HEADER *DiscoveryHeader;\r
+ OPAL_LEVEL0_FEATURE_DESCRIPTOR *Feat;\r
+ UINTN Size;\r
\r
- NULL_CHECK(Session);\r
- NULL_CHECK(DataSize);\r
- NULL_CHECK(Data);\r
+ NULL_CHECK (Session);\r
+ NULL_CHECK (DataSize);\r
+ NULL_CHECK (Data);\r
\r
- ZeroMem(Buffer, BUFFER_SIZE);\r
- ASSERT(sizeof(Buffer) >= sizeof(TCG_SUPPORTED_SECURITY_PROTOCOLS));\r
+ ZeroMem (Buffer, BUFFER_SIZE);\r
+ ASSERT (sizeof (Buffer) >= sizeof (TCG_SUPPORTED_SECURITY_PROTOCOLS));\r
\r
if (OpalRetrieveLevel0DiscoveryHeader (Session, BUFFER_SIZE, Buffer) == TcgResultFailure) {\r
DEBUG ((DEBUG_INFO, "OpalRetrieveLevel0DiscoveryHeader failed\n"));\r
return TcgResultFailure;\r
}\r
- DiscoveryHeader = (TCG_LEVEL0_DISCOVERY_HEADER*) Buffer;\r
+\r
+ DiscoveryHeader = (TCG_LEVEL0_DISCOVERY_HEADER *)Buffer;\r
\r
Size = 0;\r
- Feat = (OPAL_LEVEL0_FEATURE_DESCRIPTOR*) TcgGetFeature (DiscoveryHeader, FeatureCode, &Size);\r
+ Feat = (OPAL_LEVEL0_FEATURE_DESCRIPTOR *)TcgGetFeature (DiscoveryHeader, FeatureCode, &Size);\r
if (Feat != NULL) {\r
if (Size > *DataSize) {\r
*DataSize = Size;\r
**/\r
BOOLEAN\r
EFIAPI\r
-OpalFeatureSupported(\r
- OPAL_DISK_SUPPORT_ATTRIBUTE *SupportedAttributes\r
+OpalFeatureSupported (\r
+ OPAL_DISK_SUPPORT_ATTRIBUTE *SupportedAttributes\r
)\r
{\r
- NULL_CHECK(SupportedAttributes);\r
+ NULL_CHECK (SupportedAttributes);\r
\r
if (SupportedAttributes->Sp1 == 0) {\r
return FALSE;\r
}\r
\r
- if (SupportedAttributes->OpalSscLite == 0 &&\r
- SupportedAttributes->OpalSsc1 == 0 &&\r
- SupportedAttributes->OpalSsc2 == 0 &&\r
- SupportedAttributes->PyriteSsc == 0 &&\r
- SupportedAttributes->PyriteSscV2 == 0\r
- ) {\r
+ if ((SupportedAttributes->OpalSscLite == 0) &&\r
+ (SupportedAttributes->OpalSsc1 == 0) &&\r
+ (SupportedAttributes->OpalSsc2 == 0) &&\r
+ (SupportedAttributes->PyriteSsc == 0) &&\r
+ (SupportedAttributes->PyriteSscV2 == 0)\r
+ )\r
+ {\r
return FALSE;\r
}\r
\r
**/\r
BOOLEAN\r
EFIAPI\r
-OpalFeatureEnabled(\r
- OPAL_DISK_SUPPORT_ATTRIBUTE *SupportedAttributes,\r
- TCG_LOCKING_FEATURE_DESCRIPTOR *LockingFeature\r
+OpalFeatureEnabled (\r
+ OPAL_DISK_SUPPORT_ATTRIBUTE *SupportedAttributes,\r
+ TCG_LOCKING_FEATURE_DESCRIPTOR *LockingFeature\r
)\r
{\r
- NULL_CHECK(SupportedAttributes);\r
- NULL_CHECK(LockingFeature);\r
+ NULL_CHECK (SupportedAttributes);\r
+ NULL_CHECK (LockingFeature);\r
\r
if (!OpalFeatureSupported (SupportedAttributes)) {\r
return FALSE;\r
\r
**/\r
BOOLEAN\r
-OpalDeviceLocked(\r
- OPAL_DISK_SUPPORT_ATTRIBUTE *SupportedAttributes,\r
- TCG_LOCKING_FEATURE_DESCRIPTOR *LockingFeature\r
+OpalDeviceLocked (\r
+ OPAL_DISK_SUPPORT_ATTRIBUTE *SupportedAttributes,\r
+ TCG_LOCKING_FEATURE_DESCRIPTOR *LockingFeature\r
)\r
{\r
- NULL_CHECK(SupportedAttributes);\r
- NULL_CHECK(LockingFeature);\r
+ NULL_CHECK (SupportedAttributes);\r
+ NULL_CHECK (LockingFeature);\r
\r
if (!OpalFeatureEnabled (SupportedAttributes, LockingFeature)) {\r
return FALSE;\r
\r
return LockingFeature->Locked;\r
}\r
-\r