summaryrefslogtreecommitdiff
path: root/meta-openbmc-mods/meta-common/recipes-network
diff options
context:
space:
mode:
authorEd Tanous <ed.tanous@intel.com>2019-08-19 21:16:19 +0300
committerEd Tanous <ed@tanous.net>2019-08-20 18:56:17 +0300
commit35e295e2a161fcf146ea031de53431b2888521fa (patch)
treea0c78943fef5c085f371aaa840d46edecc1f2e95 /meta-openbmc-mods/meta-common/recipes-network
parent9856ac69064742544fafad307d3ee4544385ffa2 (diff)
downloadopenbmc-35e295e2a161fcf146ea031de53431b2888521fa.tar.xz
Sync to internal 8-19-2019
Signed-off-by: Ed Tanous <ed.tanous@intel.com>
Diffstat (limited to 'meta-openbmc-mods/meta-common/recipes-network')
-rw-r--r--meta-openbmc-mods/meta-common/recipes-network/network/phosphor-network/0002-IPv6-Network-changes-to-configuration-file.patch208
-rw-r--r--meta-openbmc-mods/meta-common/recipes-network/network/phosphor-network_%.bbappend3
2 files changed, 1 insertions, 210 deletions
diff --git a/meta-openbmc-mods/meta-common/recipes-network/network/phosphor-network/0002-IPv6-Network-changes-to-configuration-file.patch b/meta-openbmc-mods/meta-common/recipes-network/network/phosphor-network/0002-IPv6-Network-changes-to-configuration-file.patch
deleted file mode 100644
index b46702902..000000000
--- a/meta-openbmc-mods/meta-common/recipes-network/network/phosphor-network/0002-IPv6-Network-changes-to-configuration-file.patch
+++ /dev/null
@@ -1,208 +0,0 @@
-From 53dbefc9f31dcfca06d7c7705ea3dcfc5e93ae72 Mon Sep 17 00:00:00 2001
-From: David Cobbley <david.j.cobbley@linux.intel.com>
-Date: Wed, 6 Jun 2018 11:11:43 -0700
-Subject: [PATCH 1/2] IPv6 Network changes to configuration file
-
-Allow Additional parameters to be set for IPv6
-
-Change-Id: If662f1ce2d265bc525073890c49231bf6f2b8a30
----
- ethernet_interface.cpp | 109 +++++++++++++++++++++++++++++++++++++++--
- ethernet_interface.hpp | 17 +++++++
- util.cpp | 3 +-
- 3 files changed, 123 insertions(+), 6 deletions(-)
-
-diff --git a/ethernet_interface.cpp b/ethernet_interface.cpp
-index 154efcb..aa1c895 100644
---- a/ethernet_interface.cpp
-+++ b/ethernet_interface.cpp
-@@ -46,6 +46,8 @@ EthernetInterface::EthernetInterface(sdbusplus::bus::bus& bus,
- std::replace(intfName.begin(), intfName.end(), '_', '.');
- interfaceName(intfName);
- EthernetInterfaceIntf::dHCPEnabled(dhcpEnabled);
-+ EthernetInterfaceIntf::iPAddressEnables(getIPAddressEnablesFromConf());
-+ EthernetInterfaceIntf::iPv6AcceptRA(getIPv6AcceptRAFromConf());
- MacAddressIntf::mACAddress(getMACAddress(intfName));
- EthernetInterfaceIntf::nTPServers(getNTPServersFromConf());
- EthernetInterfaceIntf::nameservers(getNameServerFromConf());
-@@ -329,7 +331,16 @@ std::string EthernetInterface::generateObjectPath(
- objectPath /= generateId(ipaddress, prefixLength, gateway);
- return objectPath.string();
- }
--
-+bool EthernetInterface::iPv6AcceptRA(bool value)
-+{
-+ if (value == EthernetInterfaceIntf::iPv6AcceptRA())
-+ {
-+ return value;
-+ }
-+ EthernetInterfaceIntf::iPv6AcceptRA(value);
-+ manager.writeToConfigurationFile();
-+ return value;
-+}
- bool EthernetInterface::dHCPEnabled(bool value)
- {
- if (value == EthernetInterfaceIntf::dHCPEnabled())
-@@ -442,7 +453,80 @@ ObjectPath EthernetInterface::createVLAN(VlanId id)
-
- return path;
- }
-+bool EthernetInterface::getIPv6AcceptRAFromConf()
-+{
-+ fs::path confPath = manager.getConfDir();
-+
-+ std::string fileName = systemd::config::networkFilePrefix +
-+ interfaceName() + systemd::config::networkFileSuffix;
-+ confPath /= fileName;
-+ config::ValueList values;
-+ config::Parser parser(confPath.string());
-+ auto rc = config::ReturnCode::SUCCESS;
-+ std::tie(rc, values) = parser.getValues("Network", "IPv6AcceptRA");
-+ if (rc != config::ReturnCode::SUCCESS)
-+ {
-+ log<level::DEBUG>("Unable to get the value for Network[IPv6AcceptRA]",
-+ entry("rc=%d", rc));
-+ return false;
-+ }
-+ if (values[0] == "true")
-+ {
-+ return true;
-+ }
-+
-+ return false;
-+}
-+EthernetInterface::IPAllowed EthernetInterface::getIPAddressEnablesFromConf()
-+{
-+ fs::path confPath = manager.getConfDir();
-+
-+ std::string fileName = systemd::config::networkFilePrefix +
-+ interfaceName() + systemd::config::networkFileSuffix;
-+ confPath /= fileName;
-+ config::ValueList values;
-+ config::Parser parser(confPath.string());
-+ auto rc = config::ReturnCode::SUCCESS;
-+ std::tie(rc, values) = parser.getValues("Network", "DHCP");
-+ if (rc != config::ReturnCode::SUCCESS)
-+ {
-+ log<level::DEBUG>("Unable to get the value for Network[DHCP]",
-+ entry("rc=%d", rc));
-+ return EthernetInterface::IPAllowed::IPv4AndIPv6;
-+ }
-+ // true, false, ipv4, ipv6
-+ if (values[0] == "ipv6")
-+ {
-+ return EthernetInterface::IPAllowed::IPv6Only;
-+ }
-+ else if (values[0] == "ipv4")
-+ {
-+ return EthernetInterface::IPAllowed::IPv4Only;
-+ }
-+ else if (values[0] == "off")
-+ {
-+ // This function should not get called if DHCP == off
-+ log<level::DEBUG>("Function not available in static mode");
-+ return EthernetInterface::IPAllowed::IPv4AndIPv6;
-+ }
-+ else
-+ {
-+ return EthernetInterface::IPAllowed::IPv4AndIPv6;
-+ }
-+}
-+EthernetInterface::IPAllowed
-+ EthernetInterface::iPAddressEnables(EthernetInterface::IPAllowed iPAllowed)
-+{
-+ if (iPAllowed == EthernetInterfaceIntf::iPAddressEnables())
-+ {
-+ return iPAllowed;
-+ }
-+
-+ EthernetInterfaceIntf::iPAddressEnables(iPAllowed);
-+ writeConfigurationFile();
-
-+ return iPAllowed;
-+}
- ServerList EthernetInterface::getNTPServersFromConf()
- {
- fs::path confPath = manager.getConfDir();
-@@ -524,7 +608,8 @@ void EthernetInterface::writeConfigurationFile()
- #else
- stream << "LinkLocalAddressing=no\n";
- #endif
-- stream << "IPv6AcceptRA=false\n";
-+ stream << std::boolalpha
-+ << "IPv6AcceptRA=" << EthernetInterfaceIntf::iPv6AcceptRA() << "\n";
-
- // Add the VLAN entry
- for (const auto& intf : vlanInterfaces)
-@@ -533,8 +618,24 @@ void EthernetInterface::writeConfigurationFile()
- << "\n";
- }
- // Add the DHCP entry
-- auto value = dHCPEnabled() ? "true"s : "false"s;
-- stream << "DHCP="s + value + "\n";
-+ std::string dhcpValue = "false";
-+ if (dHCPEnabled())
-+ {
-+ IPAllowed ipAllowed = EthernetInterfaceIntf::iPAddressEnables();
-+ if (ipAllowed == IPAllowed::IPv4AndIPv6)
-+ {
-+ dhcpValue = "true";
-+ }
-+ else if (ipAllowed == IPAllowed::IPv4Only)
-+ {
-+ dhcpValue = "ipv4";
-+ }
-+ else if (ipAllowed == IPAllowed::IPv6Only)
-+ {
-+ dhcpValue = "ipv6";
-+ }
-+ }
-+ stream << "DHCP=" << dhcpValue << "\n";
-
- // When the interface configured as dhcp, we don't need below given entries
- // in config file.
-diff --git a/ethernet_interface.hpp b/ethernet_interface.hpp
-index c65726a..55fd7d9 100644
---- a/ethernet_interface.hpp
-+++ b/ethernet_interface.hpp
-@@ -207,6 +207,23 @@ class EthernetInterface : public Ifaces
- /** @brief write the dhcp section **/
- void writeDHCPSection(std::fstream& stream);
-
-+ /** @brief get the IPv6AcceptRA flag from the network configuration file
-+ *
-+ */
-+ bool getIPv6AcceptRAFromConf();
-+
-+ /** @brief check conf file for Router Advertisements
-+ *
-+ */
-+ bool iPv6AcceptRA(bool value) override;
-+
-+ /** @brief get the allowed network modes. Similar to DHCP enabled, but
-+ * more specific
-+ */
-+ IPAllowed getIPAddressEnablesFromConf();
-+
-+ IPAllowed iPAddressEnables(IPAllowed) override;
-+
- /** @brief get the NTP server list from the network conf
- *
- */
-diff --git a/util.cpp b/util.cpp
-index 6bc1497..6c60d54 100644
---- a/util.cpp
-+++ b/util.cpp
-@@ -461,8 +461,7 @@ bool getDHCPValue(const std::string& confDir, const std::string& intf)
- entry("RC=%d", rc));
- return dhcp;
- }
-- // There will be only single value for DHCP key.
-- if (values[0] == "true")
-+ if (values[0] != "false")
- {
- dhcp = true;
- }
---
-2.17.1
-
diff --git a/meta-openbmc-mods/meta-common/recipes-network/network/phosphor-network_%.bbappend b/meta-openbmc-mods/meta-common/recipes-network/network/phosphor-network_%.bbappend
index afec5d41f..ee0d78d57 100644
--- a/meta-openbmc-mods/meta-common/recipes-network/network/phosphor-network_%.bbappend
+++ b/meta-openbmc-mods/meta-common/recipes-network/network/phosphor-network_%.bbappend
@@ -2,8 +2,7 @@ FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
DEPENDS += "nlohmann-json"
-SRC_URI += "file://0002-IPv6-Network-changes-to-configuration-file.patch \
- file://0003-Adding-channel-specific-privilege-to-network.patch \
+SRC_URI += "file://0003-Adding-channel-specific-privilege-to-network.patch \
"
SRCREV = "f273d2b5629d2a7d96802dc7a7ddb92e303ac8de"