summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--prov-mode-mgr/include/prov-mode-mgr.hpp2
-rw-r--r--prov-mode-mgr/src/prov-mode-mgr.cpp30
2 files changed, 32 insertions, 0 deletions
diff --git a/prov-mode-mgr/include/prov-mode-mgr.hpp b/prov-mode-mgr/include/prov-mode-mgr.hpp
index 6ca7424..9824a07 100644
--- a/prov-mode-mgr/include/prov-mode-mgr.hpp
+++ b/prov-mode-mgr/include/prov-mode-mgr.hpp
@@ -55,6 +55,8 @@ class ProvModeMgr
void updateProvModeProperty(
sdbusplus::xyz::openbmc_project::Control::Security::server::
RestrictionMode::Modes mode);
+ void logEvent(sdbusplus::xyz::openbmc_project::Control::Security::server::
+ RestrictionMode::Modes mode);
public:
ProvModeMgr(boost::asio::io_service& io,
diff --git a/prov-mode-mgr/src/prov-mode-mgr.cpp b/prov-mode-mgr/src/prov-mode-mgr.cpp
index 33d084a..a7ca4e3 100644
--- a/prov-mode-mgr/src/prov-mode-mgr.cpp
+++ b/prov-mode-mgr/src/prov-mode-mgr.cpp
@@ -74,11 +74,40 @@ void ProvModeMgr::updateProvModeProperty(
std::to_string(static_cast<uint8_t>(mode)));
}
+void ProvModeMgr::logEvent(sdbusplus::xyz::openbmc_project::Control::Security::
+ server::RestrictionMode::Modes mode)
+{
+ namespace secCtrl =
+ sdbusplus::xyz::openbmc_project::Control::Security::server;
+
+ if (mode == secCtrl::RestrictionMode::Modes::Provisioning)
+ {
+ sd_journal_send("MESSAGE=%s", "RestrictionMode - Provisioning state",
+ "PRIORITY=%i", LOG_INFO, "REDFISH_MESSAGE_ID=%s",
+ "OpenBMC.0.1.SystemInterfaceUnprovisioned", NULL);
+ }
+ else if (mode == secCtrl::RestrictionMode::Modes::ProvisionedHostWhitelist)
+ {
+ sd_journal_send("MESSAGE=%s", "RestrictionMode - Whitelist state",
+ "PRIORITY=%i", LOG_INFO, "REDFISH_MESSAGE_ID=%s",
+ "OpenBMC.0.1.SystemInterfaceWhitelistProvisioned",
+ NULL);
+ }
+ else if (mode == secCtrl::RestrictionMode::Modes::ProvisionedHostDisabled)
+ {
+ sd_journal_send("MESSAGE=%s", "RestrictionMode - Disabled state",
+ "PRIORITY=%i", LOG_INFO, "REDFISH_MESSAGE_ID=%s",
+ "OpenBMC.0.1.SystemInterfaceDisabledProvisioned", NULL);
+ }
+ // Other modes N/A for now, ignore the same.
+}
+
void ProvModeMgr::init()
{
namespace secCtrl =
sdbusplus::xyz::openbmc_project::Control::Security::server;
iface = server.add_interface(provModePath, provModeIntf);
+ logEvent(provMode);
iface->register_property(
"RestrictionMode",
sdbusplus::xyz::openbmc_project::Control::Security::server::
@@ -92,6 +121,7 @@ void ProvModeMgr::init()
secCtrl::RestrictionMode::Modes mode =
secCtrl::RestrictionMode::convertModesFromString(req);
provMode = mode;
+ logEvent(mode);
updateProvModeProperty(mode);
return 1;
}