clang-format: copy latest and re-format
clang-format-17 has some backwards incompatible changes that require
additional settings for best compatibility and re-running the formatter.
Copy the latest .clang-format from the docs repository and reformat the
repository.
Change-Id: I3e9e6350864ac267819a4b8d670bef7d3746976e
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
diff --git a/.clang-format b/.clang-format
index d92a3f1..d43e884 100644
--- a/.clang-format
+++ b/.clang-format
@@ -14,26 +14,30 @@
AllowShortBlocksOnASingleLine: Empty
AllowShortCaseLabelsOnASingleLine: false
AllowShortFunctionsOnASingleLine: Empty
-AllowShortIfStatementsOnASingleLine: false
+AllowShortIfStatementsOnASingleLine: Never
+AllowShortLambdasOnASingleLine: true
AllowShortLoopsOnASingleLine: false
AlwaysBreakAfterReturnType: None
AlwaysBreakBeforeMultilineStrings: false
AlwaysBreakTemplateDeclarations: Yes
BinPackArguments: true
BinPackParameters: true
+BitFieldColonSpacing: None
BraceWrapping:
AfterCaseLabel: true
AfterClass: true
AfterControlStatement: true
AfterEnum: true
+ AfterExternBlock: true
AfterFunction: true
AfterNamespace: true
AfterObjCDeclaration: true
AfterStruct: true
AfterUnion: true
- AfterExternBlock: true
BeforeCatch: true
BeforeElse: true
+ BeforeLambdaBody: false
+ BeforeWhile: false
IndentBraces: false
SplitEmptyFunction: false
SplitEmptyRecord: false
@@ -48,17 +52,16 @@
ColumnLimit: 80
CommentPragmas: '^ IWYU pragma:'
CompactNamespaces: false
-ConstructorInitializerAllOnOneLineOrOnePerLine: false
ConstructorInitializerIndentWidth: 4
ContinuationIndentWidth: 4
Cpp11BracedListStyle: true
-DeriveLineEnding: false
DerivePointerAlignment: false
-PointerAlignment: Left
DisableFormat: false
-ExperimentalAutoDetectBinPacking: false
FixNamespaceComments: true
-ForEachMacros: [ foreach, Q_FOREACH, BOOST_FOREACH ]
+ForEachMacros:
+ - foreach
+ - Q_FOREACH
+ - BOOST_FOREACH
IncludeBlocks: Regroup
IncludeCategories:
- Regex: '^[<"](gtest|gmock)'
@@ -78,6 +81,7 @@
- Regex: '.*'
Priority: 6
IndentCaseLabels: true
+IndentExternBlock: NoIndent
IndentRequiresClause: true
IndentWidth: 4
IndentWrappedFunctionNames: true
@@ -92,6 +96,7 @@
ObjCBlockIndentWidth: 2
ObjCSpaceAfterProperty: false
ObjCSpaceBeforeProtocolList: true
+PackConstructorInitializers: BinPack
PenaltyBreakAssignment: 25
PenaltyBreakBeforeFirstCallParameter: 19
PenaltyBreakComment: 300
@@ -100,12 +105,13 @@
PenaltyExcessCharacter: 1000000
PenaltyReturnTypeOnItsOwnLine: 60
PenaltyIndentedWhitespace: 0
+PointerAlignment: Left
QualifierAlignment: Left
ReferenceAlignment: Left
ReflowComments: true
RequiresClausePosition: OwnLine
RequiresExpressionIndentation: Keyword
-SortIncludes: true
+SortIncludes: CaseSensitive
SortUsingDeclarations: true
SpaceAfterCStyleCast: false
SpaceAfterTemplateKeyword: true
@@ -117,7 +123,7 @@
SpaceBeforeRangeBasedForLoopColon: true
SpaceInEmptyParentheses: false
SpacesBeforeTrailingComments: 1
-SpacesInAngles: false
+SpacesInAngles: Never
SpacesInContainerLiterals: true
SpacesInCStyleCastParentheses: false
SpacesInParentheses: false
diff --git a/control/actions.cpp b/control/actions.cpp
index bd2adfc..25db5a9 100644
--- a/control/actions.cpp
+++ b/control/actions.cpp
@@ -73,10 +73,9 @@
// Set/update the services of the group
zone.setServices(&group);
auto services = zone.getGroupServices(&group);
- auto missingOwner = std::any_of(services.begin(), services.end(),
- [](const auto& s) {
- return !std::get<hasOwnerPos>(s);
- });
+ auto missingOwner = std::any_of(
+ services.begin(), services.end(),
+ [](const auto& s) { return !std::get<hasOwnerPos>(s); });
if (missingOwner)
{
zone.setSpeed(speed);
diff --git a/control/actions.hpp b/control/actions.hpp
index 968c1b2..fd7c8a6 100644
--- a/control/actions.hpp
+++ b/control/actions.hpp
@@ -150,7 +150,7 @@
count++;
return sum;
}
- });
+ });
if ((group.size() - count) > 0)
{
auto groupSize = static_cast<int64_t>(group.size());
@@ -208,7 +208,7 @@
count++;
return sum;
}
- });
+ });
if ((group.size() - count) > 0)
{
auto groupSize = static_cast<int64_t>(group.size());
@@ -617,18 +617,16 @@
if (useEvents)
{
// Init events
- std::for_each(events.begin(), events.end(),
- [&zone](auto const& entry) {
- zone.initEvent(entry);
- });
+ std::for_each(
+ events.begin(), events.end(),
+ [&zone](auto const& entry) { zone.initEvent(entry); });
}
else
{
// Remove events
- std::for_each(events.begin(), events.end(),
- [&zone](auto const& entry) {
- zone.removeEvent(entry);
- });
+ std::for_each(
+ events.begin(), events.end(),
+ [&zone](auto const& entry) { zone.removeEvent(entry); });
}
};
}
diff --git a/control/functor.hpp b/control/functor.hpp
index 1208aec..14d27d2 100644
--- a/control/functor.hpp
+++ b/control/functor.hpp
@@ -176,7 +176,7 @@
{
// Property value not sent to handler
}
- });
+ });
}
private:
diff --git a/control/json/actions/default_floor.cpp b/control/json/actions/default_floor.cpp
index f1cc4af..95a2219 100644
--- a/control/json/actions/default_floor.cpp
+++ b/control/json/actions/default_floor.cpp
@@ -44,7 +44,7 @@
std::any_of(members.begin(), members.end(),
[&intf = group.getInterface()](const auto& member) {
return !Manager::hasOwner(member, intf);
- });
+ });
if (isMissingOwner)
{
zone.setFloor(zone.getDefaultFloor());
diff --git a/control/json/actions/mapped_floor.cpp b/control/json/actions/mapped_floor.cpp
index 97f659f..3de2188 100644
--- a/control/json/actions/mapped_floor.cpp
+++ b/control/json/actions/mapped_floor.cpp
@@ -237,7 +237,7 @@
{
value = static_cast<double>(val);
}
- },
+ },
value);
}
@@ -271,7 +271,7 @@
"isn't numeric",
ActionBase::getName(), group.getName())};
}
- },
+ },
value);
checked = true;
}
diff --git a/control/json/actions/missing_owner_target.cpp b/control/json/actions/missing_owner_target.cpp
index 2138a06..deed3cb 100644
--- a/control/json/actions/missing_owner_target.cpp
+++ b/control/json/actions/missing_owner_target.cpp
@@ -47,7 +47,7 @@
std::any_of(members.begin(), members.end(),
[&intf = group.getInterface()](const auto& member) {
return !Manager::hasOwner(member, intf);
- });
+ });
// Update zone's target hold based on action results
zone.setTargetHold(group.getName(), _target, isMissingOwner);
}
diff --git a/control/json/actions/override_fan_target.cpp b/control/json/actions/override_fan_target.cpp
index 33fbd34..103008a 100644
--- a/control/json/actions/override_fan_target.cpp
+++ b/control/json/actions/override_fan_target.cpp
@@ -87,8 +87,8 @@
{
fanList = std::accumulate(std::next(_fans.begin()), _fans.end(),
_fans[0], [](auto list, auto fan) {
- return std::move(list) + ", " + fan;
- });
+ return std::move(list) + ", " + fan;
+ });
}
record(std::format("Adding fan target lock of {} on fans [{}] zone {}",
diff --git a/control/json/actions/set_parameter_from_group_max.cpp b/control/json/actions/set_parameter_from_group_max.cpp
index 10c2b70..99e184f 100644
--- a/control/json/actions/set_parameter_from_group_max.cpp
+++ b/control/json/actions/set_parameter_from_group_max.cpp
@@ -77,7 +77,7 @@
.c_str());
invalid = true;
}
- },
+ },
value);
if (invalid)
{
diff --git a/control/json/actions/target_from_group_max.cpp b/control/json/actions/target_from_group_max.cpp
index 045b2d5..341c67d 100644
--- a/control/json/actions/target_from_group_max.cpp
+++ b/control/json/actions/target_from_group_max.cpp
@@ -197,7 +197,7 @@
.c_str());
invalid = true;
}
- },
+ },
value);
if (invalid)
{
diff --git a/control/json/actions/timer_based_actions.cpp b/control/json/actions/timer_based_actions.cpp
index 81d8fc1..02779bd 100644
--- a/control/json/actions/timer_based_actions.cpp
+++ b/control/json/actions/timer_based_actions.cpp
@@ -42,10 +42,9 @@
{
// If any of groups' value == nullopt(i.e. not configured), action is
// driven by the service owned state of the group members
- _byOwner = std::any_of(_groups.begin(), _groups.end(),
- [](const auto& group) {
- return group.getValue() == std::nullopt;
- });
+ _byOwner = std::any_of(
+ _groups.begin(), _groups.end(),
+ [](const auto& group) { return group.getValue() == std::nullopt; });
setTimerConf(jsonObj);
setActions(jsonObj);
@@ -58,12 +57,12 @@
// If any service providing a group member is not owned, start
// timer and if all members' services are owned, stop timer.
if (std::any_of(_groups.begin(), _groups.end(), [](const auto& group) {
- const auto& members = group.getMembers();
- return std::any_of(members.begin(), members.end(),
- [&group](const auto& member) {
+ const auto& members = group.getMembers();
+ return std::any_of(members.begin(), members.end(),
+ [&group](const auto& member) {
return !Manager::hasOwner(member, group.getInterface());
- });
- }))
+ });
+ }))
{
startTimer();
}
@@ -87,7 +86,7 @@
mgr->getProperty(member, group.getInterface(),
group.getProperty());
});
- }))
+ }))
{
// Timer will be started(and never stopped) when _groups is empty
startTimer();
diff --git a/control/json/event.cpp b/control/json/event.cpp
index 3a74f30..628c222 100644
--- a/control/json/event.cpp
+++ b/control/json/event.cpp
@@ -299,8 +299,8 @@
auto availTrigs = std::accumulate(
std::next(trigger::triggers.begin()), trigger::triggers.end(),
trigger::triggers.begin()->first, [](auto list, auto trig) {
- return std::move(list) + ", " + trig.first;
- });
+ return std::move(list) + ", " + trig.first;
+ });
log<level::ERR>(
std::format("Trigger '{}' is not recognized", tClass).c_str(),
entry("AVAILABLE_TRIGGERS=%s", availTrigs.c_str()));
diff --git a/control/json/fan.cpp b/control/json/fan.cpp
index 0010d2b..5abcfbe 100644
--- a/control/json/fan.cpp
+++ b/control/json/fan.cpp
@@ -144,10 +144,9 @@
void Fan::unlockTarget(uint64_t target)
{
// find and remove the requested lock
- auto itr(std::find_if(_lockedTargets.begin(), _lockedTargets.end(),
- [target](auto lockedTarget) {
- return target == lockedTarget;
- }));
+ auto itr(std::find_if(
+ _lockedTargets.begin(), _lockedTargets.end(),
+ [target](auto lockedTarget) { return target == lockedTarget; }));
if (_lockedTargets.end() != itr)
{
diff --git a/control/json/manager.cpp b/control/json/manager.cpp
index 5121e97..838bd30 100644
--- a/control/json/manager.cpp
+++ b/control/json/manager.cpp
@@ -339,10 +339,9 @@
// Set owner state for specific object given
auto& ownIntf = _servTree[path][serv];
ownIntf.first = isOwned;
- auto itIntf = std::find_if(ownIntf.second.begin(), ownIntf.second.end(),
- [&intf](const auto& interface) {
- return intf == interface;
- });
+ auto itIntf = std::find_if(
+ ownIntf.second.begin(), ownIntf.second.end(),
+ [&intf](const auto& interface) { return intf == interface; });
if (itIntf == std::end(ownIntf.second))
{
ownIntf.second.emplace_back(intf);
diff --git a/control/json/manager.hpp b/control/json/manager.hpp
index 369b6bf..d7657e9 100644
--- a/control/json/manager.hpp
+++ b/control/json/manager.hpp
@@ -229,7 +229,7 @@
return std::find(getActiveProfiles().begin(),
getActiveProfiles().end(),
name) != getActiveProfiles().end();
- }))
+ }))
{
continue;
}
diff --git a/control/json/triggers/init.cpp b/control/json/triggers/init.cpp
index 32277d7..bd557d7 100644
--- a/control/json/triggers/init.cpp
+++ b/control/json/triggers/init.cpp
@@ -159,10 +159,9 @@
if (!groups.empty() && handler == methods.end())
{
// Construct list of available methods
- auto availMethods = std::accumulate(std::next(methods.begin()),
- methods.end(),
- methods.begin()->first,
- [](auto list, auto method) {
+ auto availMethods = std::accumulate(
+ std::next(methods.begin()), methods.end(),
+ methods.begin()->first, [](auto list, auto method) {
return std::move(list) + ", " + method.first;
});
auto msg =
diff --git a/control/json/triggers/signal.cpp b/control/json/triggers/signal.cpp
index 5e78d6e..537ef50 100644
--- a/control/json/triggers/signal.cpp
+++ b/control/json/triggers/signal.cpp
@@ -249,11 +249,11 @@
if (subscriber == signals.end())
{
// Construct list of available signals
- auto availSignals = std::accumulate(
- std::next(signals.begin()), signals.end(), signals.begin()->first,
- [](auto list, auto signal) {
+ auto availSignals =
+ std::accumulate(std::next(signals.begin()), signals.end(),
+ signals.begin()->first, [](auto list, auto signal) {
return std::move(list) + ", " + signal.first;
- });
+ });
auto msg =
std::format("Event '{}' requires a supported signal given to be "
"triggered by signal, available signals: {}",
diff --git a/control/json/zone.cpp b/control/json/zone.cpp
index 487a7d4..12f8c02 100644
--- a/control/json/zone.cpp
+++ b/control/json/zone.cpp
@@ -161,10 +161,9 @@
void Zone::lockFanTarget(const std::string& fname, uint64_t target)
{
- auto fanItr = std::find_if(_fans.begin(), _fans.end(),
- [&fname](const auto& fan) {
- return fan->getName() == fname;
- });
+ auto fanItr = std::find_if(
+ _fans.begin(), _fans.end(),
+ [&fname](const auto& fan) { return fan->getName() == fname; });
if (_fans.end() != fanItr)
{
@@ -181,10 +180,9 @@
void Zone::unlockFanTarget(const std::string& fname, uint64_t target)
{
- auto fanItr = std::find_if(_fans.begin(), _fans.end(),
- [&fname](const auto& fan) {
- return fan->getName() == fname;
- });
+ auto fanItr = std::find_if(
+ _fans.begin(), _fans.end(),
+ [&fname](const auto& fan) { return fan->getName() == fname; });
if (_fans.end() != fanItr)
{
@@ -460,10 +458,9 @@
if (propFuncs == _intfPropHandlers.end())
{
// Construct list of available configurable interfaces
- auto intfs = std::accumulate(std::next(_intfPropHandlers.begin()),
- _intfPropHandlers.end(),
- _intfPropHandlers.begin()->first,
- [](auto list, auto intf) {
+ auto intfs = std::accumulate(
+ std::next(_intfPropHandlers.begin()), _intfPropHandlers.end(),
+ _intfPropHandlers.begin()->first, [](auto list, auto intf) {
return std::move(list) + ", " + intf.first;
});
log<level::ERR>("Configured interface not available",
@@ -500,7 +497,7 @@
propFuncs->second.end(), propFuncs->second.begin()->first,
[](auto list, auto prop) {
return std::move(list) + ", " + prop.first;
- });
+ });
log<level::ERR>("Configured property not available",
entry("JSON=%s", property.dump().c_str()),
entry("AVAILABLE_PROPS=%s", props.c_str()));
diff --git a/control/manager.cpp b/control/manager.cpp
index 43e500e..27c3b47 100644
--- a/control/manager.cpp
+++ b/control/manager.cpp
@@ -98,7 +98,7 @@
if (std::all_of(conditions.begin(), conditions.end(),
[&bus](const auto& condition) {
return checkCondition(bus, condition);
- }))
+ }))
{
// Create a Zone object for each zone in this group
auto& zones = std::get<zoneListPos>(group);
diff --git a/control/preconditions.cpp b/control/preconditions.cpp
index 842c178..6365d41 100644
--- a/control/preconditions.cpp
+++ b/control/preconditions.cpp
@@ -71,10 +71,9 @@
// Set/update the services of the group
zone.setServices(&group);
const auto& services = zone.getGroupServices(&group);
- auto precondState = std::any_of(services.begin(), services.end(),
- [](const auto& s) {
- return !std::get<hasOwnerPos>(s);
- });
+ auto precondState = std::any_of(
+ services.begin(), services.end(),
+ [](const auto& s) { return !std::get<hasOwnerPos>(s); });
if (precondState)
{
diff --git a/control/triggers.cpp b/control/triggers.cpp
index eb2580f..362f4b6 100644
--- a/control/triggers.cpp
+++ b/control/triggers.cpp
@@ -13,12 +13,11 @@
Trigger timer(TimerConf&& tConf)
{
- return
- [tConf = std::move(tConf)](control::Zone& zone, const std::string& name,
- const Group& group,
- const std::vector<Action>& actions) {
+ return [tConf = std::move(tConf)](
+ control::Zone& zone, const std::string& name, const Group& group,
+ const std::vector<Action>& actions) {
zone.addTimer(name, group, actions, tConf);
- };
+ };
}
Trigger signal(const std::string& match, SignalHandler&& handler)
@@ -75,10 +74,9 @@
}
// Run action functions for initial event state
- std::for_each(actions.begin(), actions.end(),
- [&zone, &group](auto const& action) {
- action(zone, group);
- });
+ std::for_each(
+ actions.begin(), actions.end(),
+ [&zone, &group](auto const& action) { action(zone, group); });
};
}
diff --git a/control/zone.cpp b/control/zone.cpp
index 46e1f08..b1badc1 100644
--- a/control/zone.cpp
+++ b/control/zone.cpp
@@ -409,10 +409,9 @@
const std::vector<Action>& eventActions)
{
// Perform the actions
- std::for_each(eventActions.begin(), eventActions.end(),
- [this, &eventGroup](const auto& action) {
- action(*this, eventGroup);
- });
+ std::for_each(
+ eventActions.begin(), eventActions.end(),
+ [this, &eventGroup](const auto& action) { action(*this, eventGroup); });
}
void Zone::handleEvent(sdbusplus::message_t& msg, const EventData* eventData)
@@ -436,10 +435,9 @@
{
for (auto& serv : srvIter->second)
{
- auto it = std::find_if(serv.second.begin(), serv.second.end(),
- [&intf](const auto& interface) {
- return intf == interface;
- });
+ auto it = std::find_if(
+ serv.second.begin(), serv.second.end(),
+ [&intf](const auto& interface) { return intf == interface; });
if (it != std::end(serv.second))
{
// Service found
diff --git a/control/zone.hpp b/control/zone.hpp
index 183bd78..ce9c6bf 100644
--- a/control/zone.hpp
+++ b/control/zone.hpp
@@ -258,7 +258,7 @@
{
value = val;
}
- },
+ },
variant);
// Unable to return Sensor Value property
@@ -633,7 +633,7 @@
{
value = val;
}
- },
+ },
var);
return value;
diff --git a/json_config.hpp b/json_config.hpp
index c3f041f..3ec0c8a 100644
--- a/json_config.hpp
+++ b/json_config.hpp
@@ -240,7 +240,7 @@
[&confFile, &appName, &fileName](const auto& value) {
confFile = fs::path{confBasePath} / appName / value / fileName;
return fs::exists(confFile);
- });
+ });
if (it == _confCompatValues.end())
{
confFile.clear();
diff --git a/monitor/json_parser.cpp b/monitor/json_parser.cpp
index b5b7291..bf37307 100644
--- a/monitor/json_parser.cpp
+++ b/monitor/json_parser.cpp
@@ -437,8 +437,8 @@
{"missing_fan_frus",
[count]() { return std::make_unique<MissingFanFRUCause>(count); }},
{"nonfunc_fan_rotors", [count]() {
- return std::make_unique<NonfuncFanRotorCause>(count);
- }}};
+ return std::make_unique<NonfuncFanRotorCause>(count);
+ }}};
auto it = causes.find(powerOffCause);
if (it != causes.end())
diff --git a/monitor/system.cpp b/monitor/system.cpp
index bb2e95e..5c2ed4e 100644
--- a/monitor/system.cpp
+++ b/monitor/system.cpp
@@ -378,8 +378,8 @@
// If no fan has its sensors on D-Bus, then there is a problem
// with the fan controller. Log an error and shut down.
if (std::all_of(_fans.begin(), _fans.end(), [](const auto& fan) {
- return fan->numSensorsOnDBusAtPowerOn() == 0;
- }))
+ return fan->numSensorsOnDBusAtPowerOn() == 0;
+ }))
{
#if DELAY_HOST_CONTROL > 0
sleep(DELAY_HOST_CONTROL);
@@ -388,8 +388,8 @@
fan->powerStateChanged(powerStateOn);
});
if (std::all_of(_fans.begin(), _fans.end(), [](const auto& fan) {
- return fan->numSensorsOnDBusAtPowerOn() == 0;
- }))
+ return fan->numSensorsOnDBusAtPowerOn() == 0;
+ }))
{
handleOfflineFanController();
return;
diff --git a/monitor/trust_group.hpp b/monitor/trust_group.hpp
index e2cb269..3e73525 100644
--- a/monitor/trust_group.hpp
+++ b/monitor/trust_group.hpp
@@ -91,7 +91,7 @@
return (std::find_if(_sensors.begin(), _sensors.end(),
[&sensor](const auto& s) {
return sensor.name() == s.sensor->name();
- }) != _sensors.end());
+ }) != _sensors.end());
}
/**
diff --git a/presence/error_reporter.cpp b/presence/error_reporter.cpp
index 790a260..b095717 100644
--- a/presence/error_reporter.cpp
+++ b/presence/error_reporter.cpp
@@ -201,10 +201,9 @@
if (powerState)
{
// If there are fans already missing, log it.
- auto missing = std::count_if(_fanStates.begin(), _fanStates.end(),
- [](const auto& fanState) {
- return fanState.second == false;
- });
+ auto missing = std::count_if(
+ _fanStates.begin(), _fanStates.end(),
+ [](const auto& fanState) { return fanState.second == false; });
if (missing)
{
@@ -213,10 +212,9 @@
}
}
- std::for_each(_fanStates.begin(), _fanStates.end(),
- [this](const auto& fanState) {
- this->checkFan(fanState.first);
- });
+ std::for_each(
+ _fanStates.begin(), _fanStates.end(),
+ [this](const auto& fanState) { this->checkFan(fanState.first); });
}
} // namespace phosphor::fan::presence
diff --git a/presence/json_parser.cpp b/presence/json_parser.cpp
index 70cac08..ea1d496 100644
--- a/presence/json_parser.cpp
+++ b/presence/json_parser.cpp
@@ -213,9 +213,9 @@
// Create the error reporter class if necessary
if (std::any_of(_fans.begin(), _fans.end(), [](const auto& fan) {
- return std::get<std::optional<size_t>>(std::get<Fan>(fan)) !=
- std::nullopt;
- }))
+ return std::get<std::optional<size_t>>(std::get<Fan>(fan)) !=
+ std::nullopt;
+ }))
{
_reporter = std::make_unique<ErrorReporter>(_bus, _fans);
}
diff --git a/sensor-monitor/shutdown_alarm_monitor.cpp b/sensor-monitor/shutdown_alarm_monitor.cpp
index 05692c0..214e3a3 100644
--- a/sensor-monitor/shutdown_alarm_monitor.cpp
+++ b/sensor-monitor/shutdown_alarm_monitor.cpp
@@ -470,10 +470,9 @@
std::optional<ShutdownType>
ShutdownAlarmMonitor::getShutdownType(const std::string& interface) const
{
- auto it = std::find_if(shutdownInterfaces.begin(), shutdownInterfaces.end(),
- [interface](const auto& a) {
- return a.second == interface;
- });
+ auto it = std::find_if(
+ shutdownInterfaces.begin(), shutdownInterfaces.end(),
+ [interface](const auto& a) { return a.second == interface; });
if (it == shutdownInterfaces.end())
{