summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--whitelist-filter.cpp24
1 files changed, 17 insertions, 7 deletions
diff --git a/whitelist-filter.cpp b/whitelist-filter.cpp
index a24ccad..9f1e7c8 100644
--- a/whitelist-filter.cpp
+++ b/whitelist-filter.cpp
@@ -105,13 +105,23 @@ void WhitelistFilter::cacheRestrictedMode()
void WhitelistFilter::handleRestrictedModeChange(sdbusplus::message::message& m)
{
using namespace sdbusplus::xyz::openbmc_project::Control::Security::server;
- std::string mode;
- m.read(mode);
- RestrictionMode::Modes restrictionMode =
- RestrictionMode::convertModesFromString(mode);
- restrictedMode = (restrictionMode == RestrictionMode::Modes::Whitelist);
- log<level::INFO>((restrictedMode ? "Updated restrictedMode = true"
- : "Updated restrictedMode = false"));
+ std::string intf;
+ std::vector<std::pair<std::string, ipmi::Value>> propertyList;
+ m.read(intf, propertyList);
+ for (const auto& property : propertyList)
+ {
+ if (property.first == "RestrictionMode")
+ {
+ RestrictionMode::Modes restrictionMode =
+ RestrictionMode::convertModesFromString(
+ std::get<std::string>(property.second));
+ restrictedMode =
+ (restrictionMode == RestrictionMode::Modes::Whitelist);
+ log<level::INFO>((restrictedMode
+ ? "Updated restrictedMode = true"
+ : "Updated restrictedMode = false"));
+ }
+ }
}
void WhitelistFilter::postInit()
OpenPOWER on IntegriCloud