summaryrefslogtreecommitdiffstats
path: root/src/include/usr
diff options
context:
space:
mode:
authorMike Baiocchi <mbaiocch@us.ibm.com>2018-01-26 17:51:38 -0600
committerDaniel M. Crowell <dcrowell@us.ibm.com>2018-02-01 17:59:52 -0500
commit1d437c8dc54886f43ab77447f0456c49f5b69c04 (patch)
treed44fb64613a6b23e25c99f31daa6b0e2436c325e /src/include/usr
parent4046ab053d85e0a531532f1a40894efb9361c83c (diff)
downloadtalos-hostboot-1d437c8dc54886f43ab77447f0456c49f5b69c04.tar.gz
talos-hostboot-1d437c8dc54886f43ab77447f0456c49f5b69c04.zip
Verify ComponentID and Extend PAYLOAD
While verifying the PAYLOAD in memory before moving it to its final location, this commit parses the PAYLOAD's header and verifies that it has the correct componentId. It also extends the PAYLOAD information to the TPM. Change-Id: Ie333d1ba5919b36919b207f25ad60806359ed710 RTC:168745 Backport: release-fips910 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/52837 Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Stephen M. Cprek <smcprek@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/include/usr')
-rw-r--r--src/include/usr/util/utilmclmgr.H25
1 files changed, 13 insertions, 12 deletions
diff --git a/src/include/usr/util/utilmclmgr.H b/src/include/usr/util/utilmclmgr.H
index 1d47523b4..82ef6f2ed 100644
--- a/src/include/usr/util/utilmclmgr.H
+++ b/src/include/usr/util/utilmclmgr.H
@@ -48,6 +48,7 @@ typedef char CompIdString[17];
// Constants to simplify checking for the MCL and POWERVM comp ids
extern const ComponentID g_MclCompId;
extern const ComponentID g_PowervmCompId;
+extern const ComponentID g_OpalCompId;
// @enum Permission Types for MCL Component
enum class CompFlags : uint16_t
@@ -255,6 +256,17 @@ class MasterContainerLidMgr
*/
errlHndl_t processComponents();
+ /**
+ * @brief TPM extend information for secure components
+ *
+ * @param[in] i_compId - Component Id
+ * @param[in] i_conHdr - Container header with information to extend
+ *
+ * @return Error handle if error
+ */
+ static errlHndl_t tpmExtend(const ComponentID& i_compId,
+ const SECUREBOOT::ContainerHeader& i_conHdr);
+
protected:
/**
@@ -358,17 +370,6 @@ class MasterContainerLidMgr
errlHndl_t verifyExtend(const ComponentID& i_compId,
CompInfo& io_compInfo);
- /**
- * @brief TPM extend information for secure components
- *
- * @param[in] i_compId - Component Id
- * @param[in] i_conHdr - Container header with information to extend
- *
- * @return Error handle if error
- */
- errlHndl_t tpmExtend(const ComponentID& i_compId,
- const SECUREBOOT::ContainerHeader& i_conHdr) const;
-
// Physical addresses reserved for the MCL itself
uint64_t iv_mclAddr;
@@ -408,4 +409,4 @@ class MasterContainerLidMgr
} // end namespace MCL
-#endif \ No newline at end of file
+#endif
OpenPOWER on IntegriCloud