network_manager: Allow direct access to interfaces
Change-Id: I3dc2bb944b8d3a7873e26ce2958a2cb1d9be95af
Signed-off-by: William A. Kennington III <wak@google.com>
diff --git a/src/network_manager.cpp b/src/network_manager.cpp
index bba2ca2..eecbe68 100644
--- a/src/network_manager.cpp
+++ b/src/network_manager.cpp
@@ -55,7 +55,7 @@
auto isCreated = false;
try
{
- auto interfaceStrList = getInterfaces();
+ auto interfaceStrList = getSystemInterfaces();
for (const auto& interface : interfaceStrList)
{
// if the interface has '.' in the name, it means that this is a
@@ -106,7 +106,7 @@
// clear all the interfaces first
interfaces.clear();
- auto interfaceStrList = getInterfaces();
+ auto interfaceStrList = getSystemInterfaces();
for (auto& interface : interfaceStrList)
{
@@ -181,13 +181,6 @@
ObjectPath Manager::vlan(std::string interfaceName, uint32_t id)
{
- if (!hasInterface(interfaceName))
- {
- using ResourceErr =
- phosphor::logging::xyz::openbmc_project::Common::ResourceNotFound;
- elog<ResourceNotFound>(ResourceErr::RESOURCE(interfaceName.c_str()));
- }
-
if (id == 0 || id >= 4095)
{
log<level::ERR>("VLAN ID is not valid", entry("VLANID=%u", id));
@@ -196,7 +189,14 @@
Argument::ARGUMENT_VALUE(std::to_string(id).c_str()));
}
- return interfaces[interfaceName]->createVLAN(id);
+ auto it = interfaces.find(interfaceName);
+ if (it == interfaces.end())
+ {
+ using ResourceErr =
+ phosphor::logging::xyz::openbmc_project::Common::ResourceNotFound;
+ elog<ResourceNotFound>(ResourceErr::RESOURCE(interfaceName.c_str()));
+ }
+ return it->second->createVLAN(id);
}
void Manager::reset()