network_manager: Add a mapping of interface ids

Change-Id: Ib0543b53c8cce77a0cedd49a4094c20ad1a28312
Signed-off-by: William A. Kennington III <wak@google.com>
diff --git a/src/network_manager.cpp b/src/network_manager.cpp
index c79c395..f69cd74 100644
--- a/src/network_manager.cpp
+++ b/src/network_manager.cpp
@@ -61,6 +61,7 @@
 {
     // clear all the interfaces first
     interfaces.clear();
+    interfacesByIdx.clear();
     for (auto& interface : system::getInterfaces())
     {
         config::Parser config(
@@ -71,7 +72,9 @@
         intf->createStaticNeighborObjects();
         intf->loadNameServers(config);
         intf->loadNTPServers(config);
-        this->interfaces.emplace(std::move(*interface.name), std::move(intf));
+        auto ptr = intf.get();
+        interfaces.emplace(std::move(*interface.name), std::move(intf));
+        interfacesByIdx.emplace(interface.idx, ptr);
     }
 }