Add LLDP configuration support
This commit implements EmitLLDP D-bus property to support configuration
of enable/disable LLDP of each ethernet interface.
Tested by:
Set EmitLLDP D-bus property on
xyz.openbmc_project.Network.EthernetInterface
Change-Id: I4ebedff9d3f914219f2f84c861fdee126584a94b
Signed-off-by: Ravi Teja <raviteja28031990@gmail.com>
diff --git a/src/ethernet_interface.cpp b/src/ethernet_interface.cpp
index 46967f5..9cef02f 100644
--- a/src/ethernet_interface.cpp
+++ b/src/ethernet_interface.cpp
@@ -102,7 +102,11 @@
EthernetInterfaceIntf::dhcp6(dhcpVal.v6, true);
EthernetInterfaceIntf::ipv6AcceptRA(getIPv6AcceptRA(config), true);
EthernetInterfaceIntf::nicEnabled(enabled, true);
-
+ auto lldpVal = parseLLDPConf();
+ if (!lldpVal.empty())
+ {
+ EthernetInterfaceIntf::emitLLDP(lldpVal[interfaceName()], true);
+ }
EthernetInterfaceIntf::ntpServers(
config.map.getValueStrings("Network", "NTP"), true);
@@ -1094,6 +1098,16 @@
eth.get().manager.get().reloadConfigs();
}
+bool EthernetInterface::emitLLDP(bool value)
+{
+ if (emitLLDP() != EthernetInterfaceIntf::emitLLDP(value))
+ {
+ manager.get().writeLLDPDConfigurationFile();
+ manager.get().reloadLLDPService();
+ }
+ return value;
+}
+
void EthernetInterface::reloadConfigs()
{
manager.get().reloadConfigs();