blob: d28ca117bfa8cf237cf9106e9194ca9f2ff02e47 [file] [log] [blame]
Asmitha Karunanithibe2bdec2021-05-13 02:54:29 -05001#include "hyp_network_manager.hpp"
2
3#include <sdeventplus/event.hpp>
4
5constexpr char DEFAULT_HYP_NW_OBJPATH[] =
6 "/xyz/openbmc_project/network/hypervisor";
7constexpr char HYP_DEFAULT_NETWORK_BUSNAME[] =
8 "xyz.openbmc_project.Network.Hypervisor";
9
10int main(int /*argc*/, char** /*argv*/)
11{
12 auto bus = sdbusplus::bus::new_default();
13
14 // Add sdbusplus ObjectManager
Patrick Williamsc38b0712022-07-22 19:26:54 -050015 sdbusplus::server::manager_t objManager(bus, DEFAULT_HYP_NW_OBJPATH);
Asmitha Karunanithibe2bdec2021-05-13 02:54:29 -050016
17 // Get default event loop
18 auto event = sdeventplus::Event::get_default();
19
20 // Attach the bus to sd_event to service user requests
21 bus.attach_event(event.get(), SD_EVENT_PRIORITY_NORMAL);
22
23 // Create hypervisor network manager dbus object
24 phosphor::network::HypNetworkMgr manager(bus, event,
25 DEFAULT_HYP_NW_OBJPATH);
26
Asmitha Karunanithia6c07572022-05-05 03:19:45 -050027 // Create the hypervisor eth interface objects
28 manager.createIfObjects();
29
Asmitha Karunanithieb40f082021-07-22 06:13:04 -050030 // Create the hypervisor system config object
31 manager.createSysConfObj();
32 const phosphor::network::SystemConfPtr& systemConfigObj =
33 manager.getSystemConf();
34 systemConfigObj->setHostName();
35
Asmitha Karunanithibe2bdec2021-05-13 02:54:29 -050036 bus.request_name(HYP_DEFAULT_NETWORK_BUSNAME);
37
38 event.loop();
39 return 0;
40}