summaryrefslogtreecommitdiffstats
path: root/src/include/usr/secureboot/service.H
diff options
context:
space:
mode:
Diffstat (limited to 'src/include/usr/secureboot/service.H')
-rw-r--r--src/include/usr/secureboot/service.H20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/include/usr/secureboot/service.H b/src/include/usr/secureboot/service.H
index 4c4d43d3c..c4dc31334 100644
--- a/src/include/usr/secureboot/service.H
+++ b/src/include/usr/secureboot/service.H
@@ -58,6 +58,8 @@ typedef uint8_t PAGE_TABLE_ENTRY_t[HASH_PAGE_TABLE_ENTRY_SIZE];
namespace SECUREBOOT
{
+ class ContainerHeader;
+
/** @brief Perform initialization of Secureboot for the Base image.
*
* - Copy secure header from original location.
@@ -223,6 +225,24 @@ namespace SECUREBOOT
const SHA512_t* i_hwKeyHash = nullptr);
/**
+ * @brief Verify component ID in a container header against a reference
+ * component ID. Up to 8 ASCII characters, not including NULL, will be
+ * compared (thus, it is critical that all components are unique with
+ * respect to the first 8 bytes).
+ *
+ * @param[in] i_containerHeader Verified container's header
+ * @param[in] i_pComponentString Reference component ID string; must not be
+ * nullptr or function will assert.
+ *
+ * @return errlHndl_t Error log handle
+ * @retval nullptr Component ID verification succeeded
+ * @retval !nullptr Error; component ID verification failed
+ */
+ errlHndl_t verifyComponent(
+ const ContainerHeader& i_containerHeader,
+ const char* i_pComponentId);
+
+ /**
* @brief Hash Signed Blob
*
* @param[in] i_blob Void pointer to effective address of blob
OpenPOWER on IntegriCloud