rtnetlink_server: Dump all netlink data at startup

We want to be able to build the configuration tree without performing an
initial object refresh.

Change-Id: I640ba802bb3ba2a8c0e6e5d4069ba4298f604b4d
Signed-off-by: William A. Kennington III <wak@google.com>
diff --git a/src/rtnetlink_server.cpp b/src/rtnetlink_server.cpp
index c5732e9..ffa123e 100644
--- a/src/rtnetlink_server.cpp
+++ b/src/rtnetlink_server.cpp
@@ -113,6 +113,13 @@
         return eventHandler(manager, std::forward<decltype(args)>(args)...);
     })
 {
+    auto cb = [&](const nlmsghdr& hdr, std::string_view data) {
+        handler(manager, hdr, data);
+    };
+    performRequest(NETLINK_ROUTE, RTM_GETLINK, NLM_F_DUMP, ifinfomsg{}, cb);
+    performRequest(NETLINK_ROUTE, RTM_GETADDR, NLM_F_DUMP, ifaddrmsg{}, cb);
+    performRequest(NETLINK_ROUTE, RTM_GETROUTE, NLM_F_DUMP, rtmsg{}, cb);
+    performRequest(NETLINK_ROUTE, RTM_GETNEIGH, NLM_F_DUMP, ndmsg{}, cb);
 }
 
 } // namespace netlink